Re: Об обучении программированию в некоторых престижных вузах
От: Pavel Dvorkin Россия  
Дата: 27.10.14 18:30
Оценка:
Здравствуйте, LaptevVV, Вы писали:

Выскажу свою точку зрения. Поскольку время уже 0:23 — очень конспективно.

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

Ну а что касается этого учебника — господи, что же тут непонятного? Автор когда-то разработал хороший (возможно, учебник я не смотрел) курс по программированию для 90-х годов прошлого века. Современное состояние он не знает, а продолжает читать свой курс. И будет его читать , пока на пенсию не выйдет. А тут подвернулась возможность издать этот курс, ну он и...
With best regards
Pavel Dvorkin
Re[6]: Об обучении программированию в некоторых престижных вузах
От: LaptevVV Россия  
Дата: 27.10.14 19:02
Оценка: :)
Здравствуйте, elmal, Вы писали:

E>Здравствуйте, LaptevVV, Вы писали:


LVV>>Да запросто!

E>Это хорошо . А то вот очень многие говорят, что такое невозможно, и программа автоматически становится ООП, если написана на яве, и процедурной, если написана на си .
Что-то ты уж совсем за первокурсника меня принимаешь...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[10]: Вот тебе пример кода
От: LaptevVV Россия  
Дата: 27.10.14 19:03
Оценка:
Здравствуйте, elmal, Вы писали:

E>Здравствуйте, LaptevVV, Вы писали:


LVV>>
LVV>>// автомат-преобразователь для целых чисел
LVV>>

E>О, господи. Это у Саттера чтоль такой стиль????? Прям прекрасный вопрос на собеседованиях — что вы думаете об этом коде и как его исправить . Я надеюсь это не код полностью готового к практической работе суперспециалиста ?
1. Это не у Саттера, а у меня.
2. Это ПРИМЕР, демонстрирующий реализацию автомата как набора функций.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[6]: Об обучении программированию в некоторых престижных вузах
От: LaptevVV Россия  
Дата: 27.10.14 19:05
Оценка:
Здравствуйте, Философ, Вы писали:

LVV>>>>1. ООП — он и в Африке ООП. Хоть на Яве, хоть на С++.


Ф>>>о! кстати!

Ф>>>а в Smalltalk'e Objective-C как, тоже?
LVV>>Да. Семантика — одна и та же.

Ф>гм... смотря что понимать под семантикой...

Ф>вы что в данном случае понимаете здесь под этим словом?
Объекты и передача сообщений.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[2]: Об обучении программированию в некоторых престижных вузах
От: LaptevVV Россия  
Дата: 27.10.14 19:14
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Выскажу свою точку зрения. Поскольку время уже 0:23 — очень конспективно.


PD>1. Учить надо программированию. Не ООП и прочим паттернам, а программированию (построению и реализации алгоритмов). Если только мы не хотим на выходе получить "специалиста", который умеет только методы вызывать и становится в тупик, когда надо самому что-то написать.

PD>2. На каком языке учить — не так уж важно. Можно и с Паскаля начать. ТурбоПаскаль брать не стоит не потому, что он плох, а потому , что нечего им забивать головы проблемами и ограничениями модели памяти реального режима.
PD>3. Научили основам программирования — можно теперь и ООП и прочее.
PD>4. И другие языки теперь изучать можно, но вообще-то лучше, если они сами будут их изучать. По какому учебнику — вопрос не первостепенный.
Ты все правильно написал.
Именно это мы пытаемся делать.
Поэтому мы сделали свою среду.
Чтобы учень не отвлекался на синтаксис ЯП, а выстраивал именно алгоритм решения задачи.
В отличие от вашего универа, к нам приходят иногда не просто с нулевыми знаниями, а даже с отрицательными...
Поэтому в новой среде прога выглядит как последовательный план работы — на русском языке.
И синтаксических ошибок — нет. Только смысловые-семантические.

И учим в этой среде целый семестр.
И только потом переходим на С++.
Повторяем основы, но уже в реальной среде и на реальном языке.
И только потом переходим к ООП.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[11]: Вот тебе пример кода
От: elmal  
Дата: 28.10.14 07:21
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>1. Это не у Саттера, а у меня.

LVV>2. Это ПРИМЕР, демонстрирующий реализацию автомата как набора функций.
То есть это студентам дается в качестве эталона?

Несколько вопросов тогда:

1) Почему функция digit переусложнена? Зачем там отдельные ветки для нижнего и верхнего регистра, в результате 2 цикла. В приличных институтах говорят сразу, что хорошие программисты всегда стараются избегать special cases. В результате при обходе списков, например, слева помещают еще одну ноду, чтоб не делать дополнительный if и тому подобное.

2) string xdigits = "ABCDEF"; // если большая шестнадцатеричная
for(d = 0; d < 6; ++d)
6 — магическое число, в xdigits можно легко ошибиться, будут интересные приколы если не A а S. Смысл константы дублировать? Да и вместо 6 если поставить 8 — будет бяка.

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

4) s1 и s2 — далеко не самое удачное имя функции.

Это что в глаза бросается сразу.

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

И вот на таких примерах будут воспитываться студенты. И потом ведь привыкнут, и хрен отучишь от такого стиля. Что и наблюдаем, кстати. Именно потому и говорят, что студентов нужно переучивать, что сплошняком в коде у них ужасы творятся. На ровном месте сложности, а где действительно сложно — там полный атас городят.
Re[2]: Об обучении программированию в некоторых престижных вузах
От: 31415926 Россия  
Дата: 28.10.14 10:37
Оценка:
Здравствуйте, LuciferSaratov, Вы писали:

LS>это ПТУ им. Баумана-то? отличная шутка


Не ПТУ, а Московское Вокально-Тракторное Училище.
Re[3]: Об обучении программированию в некоторых престижных вузах
От: elmal  
Дата: 28.10.14 11:21
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>От нее же информация, что в одной школе не получили аттестата 12 выпускников, в другой — 17.

LVV>Это те, кто не набрал обязательного минимума по обязательным предметам.
LVV>Прикинь, какие сейчас выпуски.
Это лишь означает, что коррупции стало меньше . Когда раздолбаям не рисуют тройку при нулевых знаниях, а у них отсутствует и бумажка — это же наоборот хорошо. А то если посмотреть очень многих текущих 50 летних — непонятно вообще как они аттестат получили. Последний раз в жизни читали в школе му му, детям по математике ничем не могут помочь начиная с четвертого класса, по биологии, химии, физике — знаний вообще полный ноль. Зато эксперты в астрологии, фен шуе, уринотерапии и тому подобным вещам.
Re[12]: Вот тебе пример кода
От: LaptevVV Россия  
Дата: 28.10.14 11:21
Оценка: :)
Здравствуйте, elmal, Вы писали:

E>Здравствуйте, LaptevVV, Вы писали:


LVV>>1. Это не у Саттера, а у меня.

LVV>>2. Это ПРИМЕР, демонстрирующий реализацию автомата как набора функций.
E>То есть это студентам дается в качестве эталона?
Пример — это не эталон. Это — пример.
Поэтому вопросы воспринимаю как риторические...
...
E>И вот на таких примерах будут воспитываться студенты. И потом ведь привыкнут, и хрен отучишь от такого стиля. Что и наблюдаем, кстати. Именно потому и говорят, что студентов нужно переучивать, что сплошняком в коде у них ужасы творятся. На ровном месте сложности, а где действительно сложно — там полный атас городят.
Фигня. Один из приемов обучения: поправьте данный код в сторону улучшения ... (читабельности, производительности... и т.п.)
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[4]: Об обучении программированию в некоторых престижных вузах
От: LaptevVV Россия  
Дата: 28.10.14 11:22
Оценка:
Здравствуйте, elmal, Вы писали:

E>Здравствуйте, LaptevVV, Вы писали:


LVV>>От нее же информация, что в одной школе не получили аттестата 12 выпускников, в другой — 17.

LVV>>Это те, кто не набрал обязательного минимума по обязательным предметам.
LVV>>Прикинь, какие сейчас выпуски.
E>Это лишь означает, что коррупции стало меньше . Когда раздолбаям не рисуют тройку при нулевых знаниях, а у них отсутствует и бумажка — это же наоборот хорошо. А то если посмотреть очень многих текущих 50 летних — непонятно вообще как они аттестат получили. Последний раз в жизни читали в школе му му, детям по математике ничем не могут помочь начиная с четвертого класса, по биологии, химии, физике — знаний вообще полный ноль. Зато эксперты в астрологии, фен шуе, уринотерапии и тому подобным вещам.
Ничего не могу сказать про подобных 50-летних, ибо обретаюсь в университетской среде.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[5]: Об обучении программированию в некоторых престижных вузах
От: elmal  
Дата: 28.10.14 11:40
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>Ничего не могу сказать про подобных 50-летних, ибо обретаюсь в университетской среде.

Вот именно. Когда окружен достаточно образованными людьми, то возникает иллюзия что и все остальные такие. А на деле людей без среднего образования у нас просто неимоверное количество. И то, что таким сейчас не выдают аттестат — это прекрасное достижение по борьбе с коррупцией. Хоть в школе это значит чуток вытравили. Еще бы и дипломы почаще не выдавали полным нулям — вообще было бы замечательно.
Re: Об обучении программированию в некоторых престижных вуза
От: a_g_99 США http://www.hooli.xyz/
Дата: 28.10.14 12:29
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>Так что сядьте там и слушайте сюда: Астраханский государственный технический университет учит реальному программированию.

LVV>Серьезно.
Лаптев, вы молодец. Серьезно. Порекламировали свой университет. Это достойно уважения

Но Стэнфорд по моему скромному мнению учит лучше
Отредактировано 28.10.2014 12:30 a_g_99 . Предыдущая версия .
Re[6]: Об обучении программированию в некоторых престижных вузах
От: LaptevVV Россия  
Дата: 28.10.14 12:52
Оценка:
Здравствуйте, elmal, Вы писали:

E>Здравствуйте, LaptevVV, Вы писали:


LVV>>Ничего не могу сказать про подобных 50-летних, ибо обретаюсь в университетской среде.

E>Вот именно. Когда окружен достаточно образованными людьми, то возникает иллюзия что и все остальные такие. А на деле людей без среднего образования у нас просто неимоверное количество. И то, что таким сейчас не выдают аттестат — это прекрасное достижение по борьбе с коррупцией. Хоть в школе это значит чуток вытравили. Еще бы и дипломы почаще не выдавали полным нулям — вообще было бы замечательно.
Ну с дипломами мы стараемся сами — выгоняем на 1-2 курсах.
Бывает, что чел все-таки добрался до выпускного, но диплом не защитил.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[2]: Об обучении программированию в некоторых престижных вуза
От: LaptevVV Россия  
Дата: 28.10.14 12:53
Оценка:
Здравствуйте, a_g_99, Вы писали:

__>Здравствуйте, LaptevVV, Вы писали:


LVV>>Так что сядьте там и слушайте сюда: Астраханский государственный технический университет учит реальному программированию.

LVV>>Серьезно.
__>Лаптев, вы молодец. Серьезно. Порекламировали свой университет. Это достойно уважения

__>Но Стэнфорд по моему скромному мнению учит лучше

Наш контингент Стэнфорд учить не сможет...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[2]: Об обучении программированию в некоторых престижных вуза
От: LaptevVV Россия  
Дата: 28.10.14 12:55
Оценка: :)))
Здравствуйте, a_g_99, Вы писали:

LVV>>Так что сядьте там и слушайте сюда: Астраханский государственный технический университет учит реальному программированию.

LVV>>Серьезно.
__>Лаптев, вы молодец. Серьезно. Порекламировали свой университет. Это достойно уважения

__>Но Стэнфорд по моему скромному мнению учит лучше

И отмечу — нас уже сравнивают со Стэнфордом...
Большой прогресс!
А раньше считали заборостроительным...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[2]: Об обучении программированию в некоторых престижных вуза
От: elmal  
Дата: 28.10.14 12:58
Оценка: :)
Здравствуйте, a_g_99, Вы писали:

__>Но Стэнфорд по моему скромному мнению учит лучше

Какой Стенфорд?!!! Выпускники Стенфорда что нидь о российских ГОСТах, ЕСПД знают? А это же самое основное в работе программиста ! Выпускники Стенфорда сразу по окончанию на позицию CTO претендуют разве ? Так что выпускники Стенфорда по сравнению с выпускниками лучшего в России Вуза по ИТ — полный отстой !
Re[3]: Об обучении программированию в некоторых престижных вуза
От: a_g_99 США http://www.hooli.xyz/
Дата: 28.10.14 13:23
Оценка: :)
Здравствуйте, LaptevVV, Вы писали:

LVV>Наш контингент Стэнфорд учить не сможет...


Друг мой, я рад что хотя бы в этом отношении вы еще трезво мыслите
Re[7]: Об обучении программированию в некоторых престижных в
От: artelk  
Дата: 28.10.14 13:35
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>Здравствуйте, Философ, Вы писали:


LVV>>>>>1. ООП — он и в Африке ООП. Хоть на Яве, хоть на С++.


Ф>>>>о! кстати!

Ф>>>>а в Smalltalk'e Objective-C как, тоже?
LVV>>>Да. Семантика — одна и та же.

Ф>>гм... смотря что понимать под семантикой...

Ф>>вы что в данном случае понимаете здесь под этим словом?
LVV>Объекты и передача сообщений.

Объекты в ООП обладают identity. А в плюсах принято почти все на стеке хранить и передавать по значению.
Например, инстанс класса complex<T> — нифига не объект.

Actually I made up the term "object-oriented", and I can tell you I did not have C++ in mind.

(C) Alan Kay
Отредактировано 28.10.2014 13:41 artelk . Предыдущая версия .
Re[13]: Вот тебе пример кода
От: Vlad_SP  
Дата: 28.10.14 14:38
Оценка:
Здравствуйте, LaptevVV,

LVV> Один из приемов обучения: поправьте данный код в сторону улучшения ... (читабельности, производительности... и т.п.)


И что, много среди студентов таких, способных поправить в сторону улучшения ... (читабельности, производительности... и т.п.)?
Re[2]: Об обучении программированию в некоторых престижных вузах
От: Шахтер Интернет  
Дата: 28.10.14 14:57
Оценка: +1
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Здравствуйте, LaptevVV, Вы писали:


PD>Выскажу свою точку зрения. Поскольку время уже 0:23 — очень конспективно.


PD>1. Учить надо программированию.


Это всё равно, что учить музыканта играть. Просто играть. На чем -- не важно.
Программирование как и музыка не существует без инструмента.

PD>Не ООП и прочим паттернам, а программированию (построению и реализации алгоритмов).


Это совершенно разные вещи. Программисты в большинстве своём не придумывают алгоритмов. Они их используют.

PD>Если только мы не хотим на выходе получить "специалиста", который умеет только методы вызывать и становится в тупик, когда надо самому что-то написать.


PD>2. На каком языке учить — не так уж важно. Можно и с Паскаля начать. ТурбоПаскаль брать не стоит не потому, что он плох, а потому , что нечего им забивать головы проблемами и ограничениями модели памяти реального режима.


Важно.

PD>3. Научили основам программирования — можно теперь и ООП и прочее.


А ООП и есть основа. Одна из.

PD>4. И другие языки теперь изучать можно, но вообще-то лучше, если они сами будут их изучать. По какому учебнику — вопрос не первостепенный.


Языки не учат по учебнику. Чтобы овладеть языком, его надо использовать. Т.е. писать на нём.

PD>Ну а что касается этого учебника — господи, что же тут непонятного? Автор когда-то разработал хороший (возможно, учебник я не смотрел) курс по программированию для 90-х годов прошлого века. Современное состояние он не знает, а продолжает читать свой курс. И будет его читать , пока на пенсию не выйдет. А тут подвернулась возможность издать этот курс, ну он и...


Это называется халтура.
В XXI век с CCore.
Копай Нео, копай -- летать научишься. © Matrix. Парадоксы
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.