OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Воскресенье, 18 Ноябрь, 2018 23:35

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 42 ]  На страницу 1, 2, 3  След.
Автор Сообщение
СообщениеДобавлено: Четверг, 08 Ноябрь, 2018 11:08 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 2938
Откуда: Астрахань
Нашел на сайте Дединского его презентацию об обучении школьников программированию:
http://storage.ded32.net.ru/Lib/Doc/Ana ... ch2010.pdf
И там он конкретно пишет, что надо ВОСПИТЫВАТЬ качества - слайды 15, 16, 17.
Без воспитания качеств - не поможет никакой инструмент.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 08 Ноябрь, 2018 11:55 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 7896
Откуда: Троицк, Москва
Это Вы опять защищаете С++?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 08 Ноябрь, 2018 12:07 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 2938
Откуда: Астрахань
Нет. Я в результате 25-летнего опыта преподавания пришел к выводу,
что инструмент - вторичен.
Программисты по мере "взросления" сами приходят к необходимости жесточайшей самодисциплины.
Достаточно Боба Мартина почитать и Кента Бека с Мартином Фаулером.
Да и собственный опыт говорит о том же.

Поэтому при начальном обучении гораздо важнее ВОСПИТАНИЕ нужных качеств - о чем и говорит Дединский.
Инструмент может помогать в этом (немного) или нет.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 08 Ноябрь, 2018 12:57 

Зарегистрирован: Пятница, 13 Март, 2009 16:36
Сообщения: 727
Откуда: Казань
Валерий Лаптев писал(а):
Нет. Я в результате 25-летнего опыта преподавания пришел к выводу,
что инструмент - вторичен.
Программисты по мере "взросления" сами приходят к необходимости жесточайшей самодисциплины.
Достаточно Боба Мартина почитать и Кента Бека с Мартином Фаулером.
Да и собственный опыт говорит о том же.

Поэтому при начальном обучении гораздо важнее ВОСПИТАНИЕ нужных качеств - о чем и говорит Дединский.
Инструмент может помогать в этом (немного) или нет.

В описании графической библиотеки Amadeus-3 есть обсуждение языка C++. Вот некоторые цитаты:
Цитата:
There are no circular references in Oberon-2, contrary to Modula-2, where definition
modules make circular references possible, and most other languages, where such rules have never
even been considered; in C/C++, nothing could stop you from building a library with chaotic crossreferences.

Цитата:
Did you ever notice how difficult it is to proof-read a document in English? Imagine that every
punctuation was fundamentally important and that missing a single comma could change the
meaning of the entire text... Not so for C/C++. Single-character mistakes are
possible in many places and won't be detected by the compiler.

Цитата:
This is a really difficult problem, since we tend to like what we know. Most people don't think about
how to design a programming language, they just pick up a manual that says how it's done.
Therefore, few people will say "Oh I just love this or that style of programming", they will like
whatever they learned first, since that will save them a lot of intellectual effort - at least until they
are confronted with problems arising from that choice. If the first language learned was C/C++, as it
still is for a large majority of programmers, then the C-style syntax, the operators and the traps and
pitfalls of the language will seem perfectly natural
, just as the words "Procedure", "Begin" and
"End" will be natural to the Pascal programmer.

И основной минус С++ в том, что слишком много возможностей. Нельзя просто взять студентов и обучить только 10% языка и сказать, чтобы они использовали только эти возможности. Так как всегда найдутся студенты, которые захотят показать свою крутость и использовать крутые фишки языка. Пусть они будет знать 20%. Другие студенты тоже захотят подтянуть свои знания в этом вопросе и будут использовать другие 20% языка. При коллективной работе будет получаться, что в общем проекте используется 95% языка, при этом все студенты понимают ядро, состоящее из 10%, а оставшиеся части понимают с какой-то вероятностью, что-то понятно, а что-то не понятно. У Дединского в презентации как раз сказано про коллективную работу, в этом плане С++ не способствует коллективной работе.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 08 Ноябрь, 2018 15:16 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 2938
Откуда: Астрахань
Rifat писал(а):
И основной минус С++ в том, что слишком много возможностей. Нельзя просто взять студентов и обучить только 10% языка и сказать, чтобы они использовали только эти возможности. Так как всегда найдутся студенты, которые захотят показать свою крутость и использовать крутые фишки языка. Пусть они будет знать 20%. Другие студенты тоже захотят подтянуть свои знания в этом вопросе и будут использовать другие 20% языка. При коллективной работе будет получаться, что в общем проекте используется 95% языка, при этом все студенты понимают ядро, состоящее из 10%, а оставшиеся части понимают с какой-то вероятностью, что-то понятно, а что-то не понятно. У Дединского в презентации как раз сказано про коллективную работу, в этом плане С++ не способствует коллективной работе.

1. Абсолютно согласен с тем, что "контуперные гении" захотят полезть в самые темные закоулки языка.
2. Речь идет не о С++, а о том, что в школьниках (в школьниках, а не студентах) надо ВОСПИТЫВАТЬ правильные качества.
3. Инструмент здесь помогает мало - проверено. :) Одна из наших преподавательниц, которая обучает народ на Семантике, часто сетует: только отвернешься - они превращаются обратно в балбесов... :) То есть вылезают ВСЕ ВРЕДНЫЕ привычки обратно... :)
Хотя более дружественный инструмент - поискать.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 08 Ноябрь, 2018 16:13 

Зарегистрирован: Среда, 07 Январь, 2015 14:53
Сообщения: 59
Все очень просто.

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

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

Для учащегося должны быть сформулированы четкие требования.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 08 Ноябрь, 2018 16:33 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 2938
Откуда: Астрахань
LKom писал(а):
Все очень просто.
Требуйте, чтобы учащиеся в своих работах использовали только преподанные средства.
Тогда не будет в программировании вредных привычек и выработается хорошая привычка работать в полном соответствии с требованиями.
Для учащегося должны быть сформулированы четкие требования.

1. ВУЗ - это не школа. Я вот со школьниками не могу работать - психологически трудно. Поэтому расписать все поурочно у меня просто не получится... :)
2. Вы плохо представляете уровень подготовки студентов в провинциальном городе... :)
После введения ЕГЭ выискиваешь хотя бы 2-3 соображающих... Если еще запрещать - лучше сразу уволиться... :)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 08 Ноябрь, 2018 16:37 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 2938
Откуда: Астрахань
Кстати, добавлю.
Пока нет формального списка качеств программиста.
У психологов они называются профессионально важные качества...
А надо бы определиться с ними.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 08 Ноябрь, 2018 17:18 

Зарегистрирован: Среда, 07 Январь, 2015 14:53
Сообщения: 59
Цитата:
1. ВУЗ - это не школа. ...
Предложите работать так, как на производстве.
Используйте технологию "Экстремального программирования".
Программируем в паре, один разрабатывает, диктует; другой подвергает сомнению и пишет. Все отвечают за результат. Разработка не остается заброшенной при уходе члена команды.

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 08 Ноябрь, 2018 17:21 

Зарегистрирован: Пятница, 13 Март, 2009 16:36
Сообщения: 727
Откуда: Казань
1) На большинстве производств экстремальное программирование не используют.
2) Есть много доводов против экстремального программирования и парного программирования в частности. Можно посмотреть книжку: "Agile!: The Good, the Hype and the Ugly" Bertrand Meyer (Author).


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 08 Ноябрь, 2018 17:35 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9036
Откуда: Россия, Орёл
Материал в презентации разумен, траектория освоения хорошая.
С++ там просто как вариант, на Обероне на порядок легче и с песней будет.

С С++ всякая языковая хрень будет путаться под ногами, но она, в принципе, "изолируемая хрень", а в случае Явы-Шарпа будет путаться ещё и инструментально-экосистемная хрень, плюс какое-нибудь обязательное ООП и дин. память не изолируешь даже на начальном этапе ("всё есть класс и объект").
Ну а Питон вообще не позволит показать то, что нужно, в плане программирования компонентов на среднем уровне. Будет только клепание-склейка.
Конечно, абсолютно "неспрямляемой" для образования является includ-истая "модульность" Сей. Ну и некоторые пороки синтаксиса типа ==.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 08 Ноябрь, 2018 17:37 

Зарегистрирован: Среда, 07 Январь, 2015 14:53
Сообщения: 59
Rifat писал(а):
1) На большинстве производств экстремальное программирование не используют.
2) Есть много доводов против экстремального программирования и парного программирования в частности. Можно посмотреть книжку: "Agile!: The Good, the Hype and the Ugly" Bertrand Meyer (Author).

Вы неправильно понимаете производство.
При разработке на любом документе должны быть:
подпись: разработал,
подпись: проверил,
подпись: утвердил.

Так должно быть и при разработке ПО.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 08 Ноябрь, 2018 18:07 

Зарегистрирован: Пятница, 13 Март, 2009 16:36
Сообщения: 727
Откуда: Казань
Илья Ермаков писал(а):
а в случае Явы-Шарпа будет путаться ещё и инструментально-экосистемная хрень

Сегодня только меня Шарп (на производстве) неприятно удивил. Ругнулся на мой код варнингом. Написал код следующего вида:
Код:
if ((100 <= x) && (x <= 200))

(все имена и константы вымышленные, а любые совпадения случайны)
Так вот, варнинг был по поводу того, что 100 <= x не очень читабельно, что лучше писать x >= 100. Понятно, что это противоречит математической традиции, где написали бы 100 <= x <= 200. Пришлось пойти на поводу у Шарпа и переписать код (не для того, чтобы код стал читабельнее, а чтобы у других разработчиков при компиляции проекта не возникал этот варнинг):
Код:
if ((x >= 100) && (x <= 200))


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 08 Ноябрь, 2018 18:17 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 2938
Откуда: Астрахань
LKom писал(а):
Цитата:
1. ВУЗ - это не школа. ...
Предложите работать так, как на производстве.
Используйте технологию "Экстремального программирования".
Программируем в паре, один разрабатывает, диктует; другой подвергает сомнению и пишет. Все отвечают за результат. Разработка не остается заброшенной при уходе члена команды.

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

1. По вашим, на мой взгляд, абсолютно наивным предложениям хочется сделать вывод, что вы в образовании не работали.
2. Со студентами мы и работаем "как на производстве".
2.1. Каждый семестр - 2 курсовых. По каждой курсовой: программа, документ Пояснительная записка (где и написано "разработал, проверил, утвердил"), презентация доклада и доклад. Читаем мы ВСЕ и не по 1 разу.
Проверяем тоже все - и тоже не по одному разу.
2.2. ТРИ учебных практики, которые аналогичны курсовым, только не за семестр, а за 2-4 неели.
2.3. Коллективный проект. Ведет наш выпускник, технический директор одной Астраханской конторы. По совместительству сертифицированный спец Микрософта, кандидат наук, официальный тестер Windows.
Там именно командная работа под его непосредственным руководством и при постоянном общении с заказчиком.
3. Профессионально важные качества - это не умения, и не знания.
Это психологические характеристики, которые и позволяют научиться "аргументировать, понимать, отвечать за общее решение и обеспечивать сопровождение всего жизненного цикла ПО".


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 08 Ноябрь, 2018 18:56 

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 2534
Откуда: Россия, Ярославль
И сколько времени вся эта бюрократия занимает от всего времени "производства"?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 08 Ноябрь, 2018 19:11 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 2938
Откуда: Астрахань
Это - не бюрократия, а обучение.
Как учить, если не проверять, и не указывать, что надо переделать.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 08 Ноябрь, 2018 20:58 

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 2534
Откуда: Россия, Ярославль
Презентация, доклад, записка. Это надо запрограммировать или просто в "ворде" посидеть полдня?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 08 Ноябрь, 2018 21:14 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 7896
Откуда: Троицк, Москва
Вправлять мозги приходится уже старшим школьникам.
Начинать воспитывать нужно с 5-го класса.

В школе -- предъявление идеальных образцов.

Вы просто, похоже, понятия не имеете о средних классах. И вообще о школе в целом.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 08 Ноябрь, 2018 21:49 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 2938
Откуда: Астрахань
Пётр Кушнир писал(а):
Презентация, доклад, записка. Это надо запрограммировать или просто в "ворде" посидеть полдня?

Петр, "ты, конечно, программист авторитетный... Но зачем ты так? ":)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 08 Ноябрь, 2018 21:53 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 2938
Откуда: Астрахань
Info21 писал(а):
Вправлять мозги приходится уже старшим школьникам.
Начинать воспитывать нужно с 5-го класса.

В школе -- предъявление идеальных образцов.

Вы просто, похоже, понятия не имеете о средних классах. И вообще о школе в целом.

С 5-го класса - я с этим полностью согласен.
Насчет идеальных образцов, вы, естественно, правы.
Лично у меня опыт очень небольшой.
Приходилось учить школьников, но нерегулярно, и с большими перерывами.
Собственно, отсюда и пошел мой интерес, как учить.
Ибо одни понимают сразу, а вторым - надо каким-то совершенно иным способом все то же самое объяснять.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 42 ]  На страницу 1, 2, 3  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2018, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB