?

Log in

No account? Create an account

Previous Entry | Next Entry

Поможите люди добрые

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

Имеем:
1. В школе обучать программированию прекратили. Вообще. Студентов изначально умеющих писать на с больше не встречается.
2. Средний уровень поступающих низок, по объективным причинам (год рождения 92-93-94).
3. На первом курсе обучаются на паскале. Учатся циклам, ифам, процедурам, указателям. Заканчивают учебный год написанием калькулятора, который разбирает и вычисляет формулу. В этом году в некоторых группах количество зачетов на конец года равнялось трем.
4. На втором курсе выжившие первые полгода изучают язык с++ без классов, плюс некоторые алгоритмы. Обязательных задач для получения зачета три: 1) возня со статической строкой; 2) двумерный динамический массив с чтением из файла и командной строкой; 3) односвязный список плюс функции типа слияния двух списков.
5. Во втором семестре начинаются классы. Обязательных задач снова три: 1) Массив стеков с перегрузкой операторов, конструктором копирования, оператором присвавания, вывода и ввода, 2) задача на наследование и полиморфизм (если дать студенту палкой по голове, чтобы удалил разветленную структуру свитчей), 3) шаблон бинарного дерева поиска (шаблоны рекурсия).
6. Обучать скриптовым языкам не хотим.

То что имеем не меняется уже очень давно - мы учились по этой же программе. То что за последние лет 10 на с++ стали писать совсем по другому, расцвела жава и с шарп, мы знаем.

Хотим:
0. Обучать с++, как базовому языку.
1. Не уменьшить количество полученных зачетов, т.е. объем кода который нужно написать студенту не должен быть более 20-30 кб в семестр, количество задач не больше пяти.
2. Обучить студентов пользоваться библиотечными функциями, т.к. г-н Тюменцев уверяет, что половина их сотрудников регулярно пишет список.
3. Оставить указатели и борьбу за очистку памяти на втором курсе в прежнем объеме (все задачи, кроме самой первой)
4. Обучить студентов писать автоматические тесты/писать программы под заданные тесты.
5. Уделить больше вниманию ООП, в частности интерфейсы, алгоритмы.

Есть четыре пути:
1. Оставить первый курс как есть, тогда на втором сможем повпихивать автоматическое тестирование и чуть-чуть ООП.
2. Убить паскаль и обучать на первом курсе языку с++ без классов
3. Убить паскаль, обучать на первом курсе жаве без классов, с библиотеками и юнит тестами, на втором запретить библиотеки.
4. Ни фига не делать, т.к. как признался г-н Тюменцев программисты с матфака все равно лучше :)

Comments

( 102 comments — Leave a comment )
vaddimka
Jun. 16th, 2009 10:18 pm (UTC)
поискал в гугле МЛЛП, был немало удивлен )

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

кстати, я кажется начинаю понимать, почему в России так популярен Дельфи, чему народ учат, на том он и программирует )
philyuhka
Jun. 16th, 2009 10:31 pm (UTC)
гы... гугль жжет :)

Кафедра математической логики и логического программирования. Что такое "логическое программирование" не знает никто, по легенде, когда создавалась кафедра профессор Ремеслеников включил данное словосочетание, чтобы иметь право предтендовать на компьютерные дисциплины.

Учим математиков и прикладных математиков. Прикладная математика - это моделирование. Какое моделирование без программирования? Математики без программирования тож не много :)

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

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

Процентов 30-70 выпускников работает программистами, тестировщиками, сисадминами...
(no subject) - vaddimka - Jun. 16th, 2009 11:04 pm (UTC) - Expand
(no subject) - philyuhka - Jun. 17th, 2009 07:39 pm (UTC) - Expand
(no subject) - vaddimka - Jun. 17th, 2009 08:13 pm (UTC) - Expand
(no subject) - philyuhka - Jun. 17th, 2009 09:20 pm (UTC) - Expand
(no subject) - aamonster - Jun. 18th, 2009 07:33 am (UTC) - Expand
(no subject) - philyuhka - Jun. 18th, 2009 05:23 pm (UTC) - Expand
(no subject) - blog.vnaum.com - Jun. 18th, 2009 01:29 pm (UTC) - Expand
(no subject) - philyuhka - Jun. 18th, 2009 05:24 pm (UTC) - Expand
(no subject) - blog.vnaum.com - Jun. 19th, 2009 03:26 am (UTC) - Expand
(no subject) - vaddimka - Jun. 16th, 2009 11:05 pm (UTC) - Expand
(no subject) - ex_juan_gan - Jun. 17th, 2009 09:47 pm (UTC) - Expand
(no subject) - philyuhka - Jun. 17th, 2009 10:39 pm (UTC) - Expand
(no subject) - mikedin - Jun. 18th, 2009 01:59 pm (UTC) - Expand
(no subject) - philyuhka - Jun. 18th, 2009 05:36 pm (UTC) - Expand
(no subject) - mikedin - Jun. 18th, 2009 06:32 pm (UTC) - Expand
(no subject) - philyuhka - Jun. 18th, 2009 07:34 pm (UTC) - Expand
(no subject) - mikedin - Jun. 18th, 2009 08:35 pm (UTC) - Expand
(no subject) - philyuhka - Jun. 18th, 2009 08:52 pm (UTC) - Expand
(no subject) - philyuhka - Jun. 16th, 2009 10:34 pm (UTC) - Expand
kukina_kat
Jun. 17th, 2009 06:25 am (UTC)
Лично мне кажется, второй путь ближе всего к оптимальному.

А с предыдущим комментатором, vaddimk'ой, в основном не согласна. Учить программированию на матфаке надо обязательно всех! Точно так же, как учить мат.анализу надо всех, даже программистов, которые никогда не будут мат.анализ в жизни применять.
Точно так же ни от куда не следует, что учить надо на том, на чем они потом писать будут. Надо выбрать что-то среднее между тем, на чем писать будут и тем, на чем можно чему-то научить. Вот тут-то мне и кажется оптимальным с++ без классов для 1 курса и с классами для 2. С# научить с нуля -- нереально на мой взгляд.
Подход-то в основном правильный: надо сначала изучить алгоритмы и основные структуры, а потом уже двигаться и объектно-ориентированному программированию.
philyuhka
Jun. 17th, 2009 06:20 pm (UTC)
Учить программированию на матфаке надо обязательно всех!
Мы тут ничего не решаем :) Есть госстандарт.

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

Подход-то в основном правильный: надо сначала изучить алгоритмы и основные структуры, а потом уже двигаться и объектно-ориентированному программированию. Проблема в том, что мы не успеваем макнуться в реальное программирование и застреваем на уровне начала 90-х... Нужно как-то что-то с чем-то склеивать и уплотнять...
(no subject) - blog.vnaum.com - Jun. 19th, 2009 05:56 am (UTC) - Expand
(no subject) - blog.vnaum.com - Jun. 18th, 2009 01:22 pm (UTC) - Expand
(no subject) - philyuhka - Jun. 18th, 2009 06:35 pm (UTC) - Expand
(no subject) - blog.vnaum.com - Jun. 19th, 2009 03:51 am (UTC) - Expand
blog.vnaum.com
Jun. 17th, 2009 07:21 am (UTC)
Программистские задачи сильно изменились за последние 20 лет.
Раньше инструментами программиста были язык и компилятор (ок, среда
разработки).
Теперь есть огромные массивы наработанного кода, и владения языком и
компилятором уже недостаточно.

От собственно алгоритмики (все эти обходы дерева, "возня со строками",
односвязные списки и пр.) акцент сместился на использование готовых
инструментов и библиотек. Да, задача про поиск льва в пустыне сейчас
решается как в том анекдоте: "ребята, подскажите компонент Delphi для
поиска льва в пустыне". Конечно, теперь это уже не компонент, а
плагин к Ruby / библиотека с CPAN / отдельный инструмент.

Естественно, знания о "что там внутри" лишними не стали. Просто в 90%
случаев лазить внутрь уже не нужно: всё написано и работает. Если в
языке / стандартной библиотеке уже есть очереди, ассоциативные массивы,
стеки, строки и всё в этом духе - в первую очередь надо научиться пользоваться ими, и
"спускаться в машинное отделение" уже при проблемах.
Эти внутренности заслуживают спецкурса, например: это интересно и
познавательно, но уже не обязательно.
Похожая история произошла с автомобилями: сейчас можно ездить на
автомобиле и не уметь перебирать двигатель.

Соответственно, хороший программист 1. знает инструменты 2. умеет
выбрать подходящие под задачу и 3. грамотно собрать "агрегат" (для чего
нужно знать протоколы и интерфейсы связи).

То есть нужны обзорные курсы какие-то обязательно.
Например, посоветованный год назад
(http://blog.vnaum.com/2008/04/revision-control-basics.html)
Software Carpentry (http://www.swc.scipy.org/) весьма приличен.
Хотя бы чтобы люди знали, что написать на C, что на питоне, что записать
в Makefile, а что и на голом шелле. Про данные - что сложить в БД, что
записать в файл, а что сериализовать в XML.

И да, revision control надо знать. Хоть какой-нибудь. Без него разработки нету.

> 6. Обучать скриптовым языкам не хотим.
Этот пункт - ошибка.
Обучать скриптовым языкам нужно: именно они теперь являются самыми
подходящими инструментами для широченного класса пользовательских задач.
Я бы даже сказал, что С/С++ остались уже ниши: быстрые не реализованные
ещё в библиотеках цифромолотилки и низкоуровневые прелести (драйвера и
прочая системщина).

> 0. Обучать с++, как базовому языку.
Меня терзают смутные сомнения по этому пункту.
По результатам рассматривания мной разных других языков C++ ещё хуже
голого C: тот хотя бы простой.

> 2. Обучить студентов пользоваться библиотечными функциями, т.к. г-н
> Тюменцев уверяет, что половина их сотрудников регулярно пишет список.
Что неудивительно: пользоваться библиотеками их не учили, а писать
списки - учили. Тюменцев прав.

> 3. Оставить указатели и борьбу за очистку памяти на втором курсе в
> прежнем объеме (все задачи, кроме самой первой)
Безумно интересная тема, но в реальности уже слабо нужная.
Всё это уже реализовано, осталось научиться пользоваться.
В спецкурс, вместе с ассемблером и кишками ОС.

> 4. Обучить студентов писать автоматические тесты/писать программы под заданные тесты.
Тут интересная часть не собственно написание теста, а декомпозиция
задачи на тестируемые куски.

> 5. Уделить больше вниманию ООП, в частности интерфейсы, алгоритмы.
Я, кажется, из параллельного мира: от ООП никакой особой выгоды пока не получил.

> 4. Ни фига не делать, т.к. как признался г-н Тюменцев программисты с матфака все равно лучше :)
Это-то и печально: если это наш верхний уровень, что что творится этажом
ниже?

В общем, я бы предложил так: паскаль выкинуть и заменить обзорными кусками про "что вообще написано" /
попробовать хелловорлды на всём этом.


philyuhka
Jun. 17th, 2009 06:12 pm (UTC)
Насчет внутренностей категорически не согласен, т.к. у нас классический университет и мы учим не инженера, который берет формулу и использует. Более того на втором курсе прикладным математикам читается курс про ассемблер и они на нем пишет программы - выкинуть его нельзя, т.к. госстандарт.

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

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

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

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

С++ - ужасный язык, с этим я не спорю. Но учить нужно ему, а не чистому С, т.к. тот же буст - это нагромождение шаблонов на ООП. Почему нужно учить С++? Ну... на нем написано оччень много строчек, человек понимающий С++, поймет С. Всяческие контроллеры и сигнальные процессоры программируются на асме, С и диалектах С++. Зная С++ легко сползать на java, c# и сто-писят скриптовых языков.

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

> 3. Оставить указатели и борьбу за очистку памяти на втором курсе в
> прежнем объеме (все задачи, кроме самой первой)
Безумно интересная тема, но в реальности уже слабо нужная.
Всё это уже реализовано, осталось научиться пользоваться.
В спецкурс, вместе с ассемблером и кишками ОС.

Согласен, что в реальности почти все будут писать на .нет, скрипте, жаве, 1с... Но мы даем классическое образование - это и минус, и плюс. И вообще человек пользующийся auto_ptr без понимания как, почему и зачем это работает... будет допускать мемори лики чаще, того кто в теме.

> 4. Обучить студентов писать автоматические тесты/писать программы под заданные тесты.
Тут интересная часть не собственно написание теста, а декомпозиция
задачи на тестируемые куски.


Сначала делай как я, затем делай как хочешь :) Это как борьба с ифом без элсе размером в процедуру.

> 5. Уделить больше вниманию ООП, в частности интерфейсы, алгоритмы.
Я, кажется, из параллельного мира: от ООП никакой особой выгоды пока не получил.

В Java многое держится на интерфейсах, визуальные формочки тож ООП. Понимать где интерфейс, а где наследование, а где инкапсуляция нужно.

> 4. Ни фига не делать, т.к. как признался г-н Тюменцев программисты с матфака все равно лучше :)
Это-то и печально: если это наш верхний уровень, что что творится этажом ниже?

Нефиг печалиться. Других не будет. Чай не в Москве живем... вырастим бабу ягу в собственном коллективе :)
(no subject) - kukina_kat - Jun. 18th, 2009 04:35 am (UTC) - Expand
(no subject) - blog.vnaum.com - Jun. 18th, 2009 12:08 pm (UTC) - Expand
(no subject) - philyuhka - Jun. 18th, 2009 06:36 pm (UTC) - Expand
(no subject) - blog.vnaum.com - Jun. 18th, 2009 12:06 pm (UTC) - Expand
(no subject) - philyuhka - Jun. 18th, 2009 07:06 pm (UTC) - Expand
(no subject) - blog.vnaum.com - Jun. 19th, 2009 04:48 am (UTC) - Expand
(no subject) - philyuhka - Jun. 19th, 2009 06:09 am (UTC) - Expand
(no subject) - blog.vnaum.com - Jun. 19th, 2009 08:37 am (UTC) - Expand
(no subject) - blog.vnaum.com - Jun. 18th, 2009 12:07 pm (UTC) - Expand
(no subject) - philyuhka - Jun. 18th, 2009 07:19 pm (UTC) - Expand
(no subject) - blog.vnaum.com - Jun. 19th, 2009 05:25 am (UTC) - Expand
(no subject) - kmmbvnr - Jun. 23rd, 2009 03:32 am (UTC) - Expand
(no subject) - philyuhka - Jun. 23rd, 2009 06:35 am (UTC) - Expand
(no subject) - kmmbvnr - Jun. 23rd, 2009 07:35 am (UTC) - Expand
(no subject) - philyuhka - Jun. 23rd, 2009 07:46 am (UTC) - Expand
lol2hard4you
Jun. 17th, 2009 08:51 am (UTC)
Re:
>доклад г-на Тюменцева
Ну да, нашли кого слушать

>всякой херне.
Разумеется. Всех студентов надо обучать в соответствии спотребностями ООО ИССАРТ, а именно:
PHP, Java и C#

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

Дальше коммент сводится к долгому спору о физиках и лириках, функциональных/императивных языках с использованием ненормативной лексики.
kukina_kat
Jun. 17th, 2009 01:28 pm (UTC)
>Писать нужно не на языке программирования, а используя язык программирования.

Я тоже согласна!
(no subject) - philyuhka - Jun. 17th, 2009 04:38 pm (UTC) - Expand
(no subject) - kukina_kat - Jun. 17th, 2009 05:11 pm (UTC) - Expand
(no subject) - philyuhka - Jun. 17th, 2009 07:55 pm (UTC) - Expand
(no subject) - kukina_kat - Jun. 18th, 2009 04:16 am (UTC) - Expand
(no subject) - blog.vnaum.com - Jun. 18th, 2009 01:10 pm (UTC) - Expand
(no subject) - philyuhka - Jun. 17th, 2009 04:36 pm (UTC) - Expand
(no subject) - blog.vnaum.com - Jun. 18th, 2009 11:07 am (UTC) - Expand
(no subject) - philyuhka - Jun. 18th, 2009 07:21 pm (UTC) - Expand
(no subject) - blog.vnaum.com - Jun. 19th, 2009 05:26 am (UTC) - Expand
zaleslaw
Jun. 17th, 2009 04:48 pm (UTC)
Честно, можно убрать паскаль + лекции по общей информатике..к сожалению,
студенту сейчас от них толку мало.

Нужна учебная программа на C++, с простейшими объектами в конце.

Много проектов + алгоритмы на графах..( задач 10, но 8 из них полегче)

2 курс
первые полгода - основные динамические структуры данных
второе полугодие - STL + boost + Asm

kukina_kat
Jun. 17th, 2009 05:22 pm (UTC)
>Честно, можно убрать лекции по общей информатике..к сожалению, студенту сейчас от них толку мало.

Ну, не правильно все это. Давайте из курса алгебры уберем Лемму Шура и Теорему Машке. От них толку мало. Да и жорданову форму находить не будем. Все равно средний студент не знает, куда ее приткнуть (хотя, между прочим, она на старших курсах очень часто встречается). Научимся матрицы перемножать и системы линейных уравнений решать -- в этом хоть какой-то практический толк есть!

У нас же классический университет! Мы должны давать академическое, а не практическое образование. Чтобы из наших студентов вырастали не просто кодеры, а на худой конец программисты. А в идеале -- архитекторы, аналитики. Или еще того круче -- идеологи программирования, новые Виннеры и Кнуты.
(no subject) - vaddimka - Jun. 17th, 2009 06:16 pm (UTC) - Expand
(no subject) - philyuhka - Jun. 17th, 2009 08:00 pm (UTC) - Expand
(no subject) - zaleslaw - Jun. 18th, 2009 04:12 am (UTC) - Expand
(no subject) - kukina_kat - Jun. 18th, 2009 04:31 am (UTC) - Expand
(no subject) - i_am_dima - Jun. 18th, 2009 08:29 am (UTC) - Expand
(no subject) - philyuhka - Jun. 18th, 2009 07:45 pm (UTC) - Expand
(no subject) - philyuhka - Jun. 18th, 2009 07:42 pm (UTC) - Expand
(no subject) - philyuhka - Jun. 17th, 2009 07:58 pm (UTC) - Expand
(no subject) - vaddimka - Jun. 17th, 2009 08:20 pm (UTC) - Expand
(no subject) - philyuhka - Jun. 17th, 2009 08:52 pm (UTC) - Expand
(no subject) - aamonster - Jun. 18th, 2009 07:39 am (UTC) - Expand
(no subject) - philyuhka - Jun. 18th, 2009 07:50 pm (UTC) - Expand
pg_user
Jun. 18th, 2009 04:37 am (UTC)
тоже поискал в гугле МЛЛП )
я считаю, что паскаль совершенно не нужен. мне его преподавали на первом курсе в 1997 году, и для меня до сих пор загадка, зачем это было сделано.
Учить на первом курсе основам алгоритмизации, ООП, методам написания классов и библиотек, вобщем, теории
а на втором начинать практику, только не на си шарп, а на старом добром си.
philyuhka
Jun. 18th, 2009 08:16 pm (UTC)
Паскаль жив с тех времен, когда на 386-ом можно было запустить турбо с :)

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

С шарпа не будет. Когда его синтаксис будет жестче синтаксиса С++ - мы подумаем. :)
aamonster
Jun. 18th, 2009 07:36 am (UTC)
1. Убить паскаль - однозначно. Хоть он в чем-то и превосходит C и удобнее для обучения - но знание лишнего языка студентам ничего не даст (основы нового языка более-менее опытным программистом при необходимости изучаются очень быстро).

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

Жава - не вполне хороший вариант: http://local.joelonsoftware.com/wiki/Опасности_обучения_на_Java

Хотя, честно говоря, судя по объему программы - программистов вы выучить не сможете (только если кто-то будет учиться/работать сам). Так что можно и правда не лезть в структуры данных, остановившись на C# или Java и воспринимая вещи типа списков и управления памятью как нечто, данное свыше.
vaddimka
Jun. 18th, 2009 10:46 am (UTC)
О, тут есть ссылка на еще один курс видео лекций, в этот раз из MIT )
(no subject) - philyuhka - Jun. 18th, 2009 08:00 pm (UTC) - Expand
(no subject) - philyuhka - Jun. 18th, 2009 08:21 pm (UTC) - Expand
(no subject) - blog.vnaum.com - Jun. 19th, 2009 06:02 am (UTC) - Expand
bukov_ka
Jun. 18th, 2009 04:49 pm (UTC)
Жаль, что все так с обучением программированию. :( Считаю, что программа хорошая. Жена по такой училась, а я у нее периодически лекции брал и радовался. Так что программу я бы не менял. Единственно, Паскаль бы заменил на C. Мой учитель информатики в школе говорил, что Паскаль плохо действует на неокрепшие умы. Я, пожалуй, с ним согласен.

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

Тем, кто заново пишет список, ничем не поможешь. Даже если показать им стандартные классы, то не факт, что они будут писать в той же среде, на том же языке, под ту же платформу.

Не стоит стремиться учить именно тому языку, на котором якобы будут писать в дальнейшем люди. Я сейчас пишу на C#, а учился программировать, когда этого языка не было. Плюс даже C# 2003-го года кардинально отличается от C# 2008-го. Новые технологии развиваются быстро. Надо учить людей думать, а не код писать.
philyuhka
Jun. 18th, 2009 08:06 pm (UTC)
Это понятно, что лямбде на С# 2008 учить не стоит - это синтаксический сахар, как и поля... :)

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

Код писать учат в сибади, поэтому они круче :)

То что в школе не учат программированию - это плохо... Погонять черепаху в лого никому не помешает. Более того в школе не учат вообще ничему. Нет базовых познаний о файловой системе... :(
(no subject) - blog.vnaum.com - Jun. 19th, 2009 06:18 am (UTC) - Expand
(no subject) - bukov_ka - Jun. 19th, 2009 02:32 pm (UTC) - Expand
(no subject) - blog.vnaum.com - Jun. 19th, 2009 06:10 am (UTC) - Expand
(no subject) - bukov_ka - Jun. 19th, 2009 02:38 pm (UTC) - Expand
(no subject) - blog.vnaum.com - Jun. 20th, 2009 07:09 am (UTC) - Expand
alexott
Jun. 20th, 2009 08:58 am (UTC)
посмотреть в сторону SICP, How to design programs, Introduction to Algorithms и т.д. и по ним составить свой план лекций. Я знаю, что в питере читали лекции по мотивам SICP.
Насчет обучения - я бы не начинал с изучения языка, а начинал с обучения алгоритмам и принципам построения программ.
Насчет путей - я бы исключил языки С и С++ из начального обучения - они слишком сложные и опасные. учил бы на питоне или чем-то подобном, легком для освоения, без всяких указателей и распределения памяти. Иначе слишком много времени теряется на борьбу с языком, а не на изучение программирования
P.S. я несколько лет преподавал С и С++ и видел очень много проблем с этим/
alexott
Jun. 20th, 2009 09:15 am (UTC)
да, еще - из опыта промышленной разработки. С и С++ - нишевые языки, основной тренд - ява и C#. Ну а про делфи и говорить не буду - он популярен исключительно на територии ex-USSR, в зарубежных разработках ни разу не видел
(no subject) - philyuhka - Jun. 20th, 2009 08:35 pm (UTC) - Expand
(no subject) - alexott - Jun. 20th, 2009 09:02 pm (UTC) - Expand
(no subject) - kmmbvnr - Jun. 22nd, 2009 04:29 am (UTC) - Expand
(no subject) - philyuhka - Jun. 22nd, 2009 06:02 pm (UTC) - Expand
(no subject) - kmmbvnr - Jun. 22nd, 2009 05:19 am (UTC) - Expand
(no subject) - philyuhka - Jun. 22nd, 2009 06:00 pm (UTC) - Expand
(no subject) - kmmbvnr - Jun. 23rd, 2009 02:59 am (UTC) - Expand
(no subject) - philyuhka - Jun. 23rd, 2009 06:06 am (UTC) - Expand
(no subject) - kmmbvnr - Jun. 23rd, 2009 06:21 am (UTC) - Expand
(no subject) - philyuhka - Jun. 23rd, 2009 06:49 am (UTC) - Expand
(no subject) - kmmbvnr - Jun. 23rd, 2009 07:51 am (UTC) - Expand
(no subject) - philyuhka - Jun. 23rd, 2009 06:26 pm (UTC) - Expand
(no subject) - kmmbvnr - Jun. 25th, 2009 07:32 am (UTC) - Expand
(no subject) - philyuhka - Jun. 26th, 2009 05:28 am (UTC) - Expand
(no subject) - kmmbvnr - Jun. 26th, 2009 05:44 am (UTC) - Expand
i_am_dima
May. 24th, 2012 06:23 pm (UTC)
вспомнил тут про этот пост. что решили то?:)
philyuhka
May. 25th, 2012 04:22 am (UTC)
Очевидно же :) Ничего не делать. Пока :)
( 102 comments — Leave a comment )