Re[10]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 14.01.10 19:09
Оценка: +1 -2 :))
Здравствуйте, VladD2, Вы писали:

LVV>>В остальном — да, есть несколько необычные моменты для паскалиста (например, выражения), но в принципе они — не сложные и к ним довольно быстро привыкаешь.


VD>А что сложного в Лиспе?


Он непригоден для восприятия человеком.
Re[12]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 15.01.10 00:55
Оценка: +3 -2
Здравствуйте, VladD2, Вы писали:

I>>Он непригоден для восприятия человеком.


VD>Это чушь. Не удобне, возможно. Но более чем пригоден.

VD>Что непонятного в:
VD>
VD>; (my-func (+ 1 2) (* 3 4))
VD>;


"непригоден для восприятия человеком" польская запись и скобки.

К тому моменту, когда люди начинают учить программирование, они уже имеют за спиной не менее 10 лет использования математики-арифметики, где все записывается вот так — sin(x) + cos(x)
переход к польской записи создает на ровном месте довольно высокий барьер

Откуда берется этот барьер ?

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

если взять чтото посложнее, то сразу возникает проблема

(+1 (* 4 3))

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

Вот по прошествии тех же 10 лет он сможет читать такое так же легко как и 1+4*3 и никак не раньше. Но, вобщем то, родным способом это все равно не станет даже после 20 лет.

Кроме этого нужно еще и бороться со скобками,

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

Скобки этот порядок нарушают. Что бы выделить подвыражение, нужно ориентироваться сначала по скобкам, а потом уже прочесть выделенное и все это делается в уме.

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

Т.е. лисп рубит на корню идею распростренения, следовательно его нельзя просто и ненавязчиво показать, передать. Лисп требует подготовленой аудитории, которая
1. умеет польскую запись на раз
2. имеет опыт чтения программ

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

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

А вот мимо текста на Лиспе он пройдет мимо, его придется усадить принудительно, заманить каким то образом и показать результат и объяснять.

Разумеется, последние абзацы про большинство. Для статпогрешности 1-3% все ровно наоборот, такие люди и пишут на лиспе.
Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 13.01.10 11:07
Оценка: 37 (3)
Вот дали интересную ссылку на хабре:
http://dbarashev.habrahabr.ru/blog/80623/#habracut

Поднимает вопрос, чему и как учить в программировании...
И о противречиях между образованием, наукой и промышленностью.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[17]: Перевод статьи Страуструпа
От: Mr.Cat  
Дата: 16.01.10 02:02
Оценка: 1 (1) +1 -1
Здравствуйте, Ikemefula, Вы писали:
I>Не я придаю. 50 лет истории лиспа демонстрируют важность синтаксиса.
I>лисп от питона отличается как табуретка от бегемота.
Синтаксис синтаксисом, но префиксность/инфиксность тут совершенно побоку.
Мне вдруг подумалось, что то, что тебе кажется господством префиксной записи — на самом деле — нечто иное, а именно — вот что:
1. Программа на лиспе должа быть записана в виде т.н. внешенего представления структуры данных ("external representation" — т.е. текстовое представление структуры данных, пригодное для чтения и машиной, и человеком) — как правило — списка.
2. Ридер (часть компилятора/интерпретатора, считывающая текст и превражающая его в структуру данных) минималистичен и часто нерасширяем.
3. Lisp way считается придерживаться концепции "(операция операнды)".

Таким образом, для работы над семантикой кода используются макросы — а стиль синтаксиса остается простым, как пробка. Можно спорить, что усложнение синтаксиса ведет повышению выразительности языка. Но усложнение синтаксиса — не есть lisp way. Lisp way — это повышение выразительности за счет повышения "семанитической емкости" простых синтаксических конструкций, если так можно выразиться.

Для тех, кто продолжает спорить насчет повышения выразительности за счет усложнения синтаксиса — приведу несколько примеров.
Первое — дизайн конструкций языка. Вот как выглядит условный оператор:
(if condition
    then-branch
    else-branch)

Вот оно самое первое правило синтаксиса — (операция операнды). Как видим, нет ключевого слова "else" между альтернативными ветками. Аналогичным образам дизайнятся и другие контрукции языка. Вот, например, паттерн-матчинг:
(match expr
       (pattern branch)
       (pattern branch)
       ...)

Тут впору обратить внимание на второе правило синтаксиса — иерархия и группировка выражений. Матчинг состоит из списка (верхний уровень иерархии) пар (группировка) выражений — паттерна и его "ветки (или клоза, как пишут в fprog.ru)" (нижний уровень иерархии). Исходя из этого, условный оператор можно воспринимать как группу из трех выражений.
Понятное дело, что все это должно быть читаемым в отсутствии избыточной пунктцации — поэтому третье правило синтаксиса — индентируй. Существуют простые общепринятые правила расстановки отступов, со следованием которым прекрасно справляется любой редактор кода. Например, в сложной конструкции выражения одного уровня иерархии стоит располагать друг под другом.

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

I>могу показать тебе на твоем же примере, но только за деньги

О как тебя понесло-то.
Re[4]: Перевод статьи Страуструпа
От: igna Россия  
Дата: 16.01.10 09:03
Оценка: 1 (1) +2
Здравствуйте, VladD2, Вы писали:

VD>И сразу же сам признал, что в настоящих условиях — это чушь.


Так скорее всего Страуструп и не собирался ничего предлагать, а просто хотел вывести C++ из-под обвинения в том, что на последнем слишком часто, чаще чем на других языках, пишут плохой код. Мол, с языком все в порядке, это программы и программисты у вас несертифицированные. К сожалению Страуструп оказался одним из тех, кто не может критично относиться к результатам своего труда, и жизнь его похоже давно уже превратилась ожесточенную в борьбу за C++. Невзирая и несмотря.
Re[13]: Перевод статьи Страуструпа
От: igna Россия  
Дата: 15.01.10 06:46
Оценка: +2 -1
Здравствуйте, Ikemefula, Вы писали:

I>переход к польской записи создает на ровном месте довольно высокий барьер


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

    i = i + 1;
Re[22]: Перевод статьи Страуструпа
От: 24  
Дата: 16.01.10 12:34
Оценка: -1 :))
FR>Такая
FR> ...
FR>ничем для новичка не лучше.

Такая работать не будет, т.к. условие никогда не выполнится (разве что Size передать отрицательный). Но если её записать без явного использования указателей (которые можно объяснить чуть позже), как-то так:

int sum(const int array[], int size) {
    int result = 0;
    for (int i = 0; i < size; i++) {
        result += array[i];
    }
    return result;
}

то новичку её понять будет проще, чем хаскель, т.к. понимание рекурсии у многих приходит далеко не сразу.
Re: Перевод статьи Страуструпа
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 16.01.10 16:42
Оценка: +2 -1
Здравствуйте, LaptevVV, Вы писали:

LVV>Поднимает вопрос, чему и как учить в программировании...

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

Чепуху он говорит в конечном итоге. Потому что нельзя подменять сертификацию (лицензирование) продуктов для критических областей, например, для тех же электростанций, сертификацией специалистов-разработчиков. Образования должно быть вполне достаточно. С другой стороны, если владельцам электростанции начхать на то, какое именно программное обеспечение используется — то никакая сертификация не поможет.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[17]: Перевод статьи Страуструпа
От: yumi  
Дата: 16.01.10 14:19
Оценка: 9 (1) -1
Здравствуйте, Ikemefula, Вы писали:

I>лисп от питона отличается как табуретка от бегемота.


Это говорит ровно о том, что ты ни Питона, ни Лиспа не знаешь. Как раз таки оба этих языка очень похожи. Посмотри сравнение Питером Норвигом.
Lisp is not dead. It’s just the URL that has changed:
http://clojure.org
Re[5]: Перевод статьи Страуструпа
От: jazzer Россия Skype: enerjazzer
Дата: 14.01.10 06:55
Оценка: 1 (1) +1
Здравствуйте, LaptevVV, Вы писали:

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


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


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

LVV>>>Страуструп же задумался о преподавании...

J>>Что значит — задумался, он уже несколько лет профессор в универе

LVV>Он и пишет, он и пишет, что 6 лет.
LVV>А задумался он потому, что до него начинает доходить, насколько С++ как язык программирования сложен и ненадежен в реализации.
Э-э-э....
Я не думаю, что к создателю языка, активно принимающему участие в его поддержке и разработке в комитете, применима фраза "до него начинает доходить"
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re: Перевод статьи Страуструпа
От: Driver  
Дата: 15.01.10 00:15
Оценка: 1 (1) +1
Здравствуйте, LaptevVV, Вы писали:

LVV>Вот дали интересную ссылку на хабре:

LVV>http://dbarashev.habrahabr.ru/blog/80623/#habracut

LVV>Поднимает вопрос, чему и как учить в программировании...

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

Дядька лишь указал на проблему (еще не факт что проблема правильно обозначена) сделав поверхностный анализ и не предложил никаких конкретных путей решения, что очень похоже на обычную болтовню "выдохшихся" ученых для поддержки важности и авторитета (из-за него только дочитал до конца).
Re[4]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 14.01.10 06:25
Оценка: :))
Здравствуйте, jazzer, Вы писали:

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


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

LVV>>Страуструп же задумался о преподавании...

J>Что значит — задумался, он уже несколько лет профессор в универе

Он и пишет, он и пишет, что 6 лет.
А задумался он потому, что до него начинает доходить, насколько С++ как язык программирования сложен и ненадежен в реализации.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[6]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 14.01.10 07:16
Оценка: +1 -1
Здравствуйте, jazzer, Вы писали:

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


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


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


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

LVV>>>>Страуструп же задумался о преподавании...

J>>>Что значит — задумался, он уже несколько лет профессор в универе

LVV>>Он и пишет, он и пишет, что 6 лет.
LVV>>А задумался он потому, что до него начинает доходить, насколько С++ как язык программирования сложен и ненадежен в реализации.
J>Э-э-э....
J>Я не думаю, что к создателю языка, активно принимающему участие в его поддержке и разработке в комитете, применима фраза "до него начинает доходить"
А мне кажется, что только начав преподавать, он начал осознавать.
Действующий программист (а Страуструп сам пишет, что был им 24 года!) по складу ума готов в язык нафигачить и ту фишку, и эту... И воскликнуть: Ух ты!!11 А можно еще и так и этак!
А действующий препод озабочен: как бы это все преподать наиболее простым и доходчивым языком. В этих профессиях совершенно разная психология.
И в преподавании остро нуждаешься в простом но мощном языке. Вот каков был Паскаль и С (кстати тоже).
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[17]: Перевод статьи Страуструпа
От: yumi  
Дата: 16.01.10 13:53
Оценка: :))
Здравствуйте, Ikemefula, Вы писали:

VD>>(+ 1 2 3 4 5 6 7 8 9)

I>Я там пропустил знаки, хотел + и — чередовать, но поспешил

1 — 2 + 3 — 4 + 5 — 6 + 7 — 8 + 9 == (+ 1 -2 3 -4 5 -6 7 -8 9)
Lisp is not dead. It’s just the URL that has changed:
http://clojure.org
Re[11]: Перевод статьи Страуструпа
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 18.01.10 13:59
Оценка: 16 (1)
Здравствуйте, LaptevVV, Вы писали:

LVV>Здравствуйте, Геннадий Васильев, Вы писали:


LVV>>>Я тут с ним совершенно согласен. Пока мы существенного различия между профессионалами и вдохновенными любителями не видим.

ГВ>>Вот чего я не понимаю, так это почему, что Струструп, что Вирт упускают из виду контекст, то есть задачи, которые решают программисты. Да, на простеньком UI+DB профи сильно отстанет от хорошо дрессированного любителя, это к гадалке не ходи. Но в то же время, профи (по идее) сможет решить те задачи, на которые любитель даже не позарится.
LVV>Ценное замечание!
LVV>Но, насколько я понимаю, ты тут имеешь ввиду индивидуальную работу. А в коллективной — уровень профессионализма в этом понимании существенно нивелируется. Чел просто участвует в работе, решение о начинании — не от него зависело. И вот тут — то как раз и должно проявляться различие между профессионалом и вдохновенным любителев в скорости и качестве работы. Но пока не проявляется особо.

Мы о разных вещах говорим. Я — о задачах, ты, вторя за Виртом и Страуструпом — о персоналиях специалистов. Для разных задач нужен разный набор знаний... Заранее оговорюсь, что я сам люблю поспекулировать, мол, знаний много не бывает, но не всегда они нужны в прямом смысле слова. Иначе бы не было таких анекдотов, как специалист с 10-летним опытом использования C++, который с трудом представляет себе, что такое виртуальное наследование. Коллективная разработка или индивидуальная — это тоже не суть важно, просто в коллективе некоторое дообучение пройдёт проще, чем индивидуальным порядком (что, в прочем, не факт).

Главное, на что я хочу обратить внимание, так это на то, что нельзя пытаться обобщать требования всей ИТ-индустрии. Тут вот какой парадокс, который, почему-то, часто обходят вниманием. Немалая часть "программистской" работы создана по сути программистами и для программистов. Если очень грубо, то один перерабатывает ключевые аспекты задачи, привлекая для этого всю доступную ему CS и пишет тулзу с кучей конфигов, а ещё десятеро заняты её конфигурированием под те или иные нужды заказчиков. Разница между ними в том, что они оперируют разным набором технических возможностей. Пространство выбора первого намного больше, чем у вторых: вторые ("конфигураторы") располагают только теми структурами, которые предоставил им тулзописатель. Конфигураторам не нужна CS, вполне достаточно прочесть документацию. Так вот, тем не менее эти десятеро объективно создадут много шума, что им тулзописатели не нужны и "всё уже написано", да и вообще они теперь — ИТ-индустрия. Проблема лишь в том, что их мнение вопросу подготовки тулзописателей по определению вторично и вообще в расчёт приниматься не должно: завтра появится новая версия тулзы и все они побегут изучать новый синтаксис конфигов, никуда не денутся (под аккомпанемент сертификации).

Однако, некоторые особо активные деятели начнут ныть о том, что "индустрии [не] нужны" и "поменять образование", приводя в качестве иллюстрации высказывания конфигураторов (нет, ребята из ИТ-индустрии совсем не плохие люди, достойные всяческого уважения, но в контексте задач подготовки тулзописателей — никто). Понимаешь подвох? Благодаря развитию CS создан огромный рынок вторичной работы, который всегда (то есть вообще всегда) будет жирнее и толще, чем рынок, скажем так, ключевых продуктов, которые сами "насыщены CS". Но мнение участников этого рынка не может быть определяющим в развитии самой CS и подготовке специалистов CS. Точно так же, как мнение слесаря ничего не определяет в обучении сопромату, хотя слесарь и является одним из потребителей продуктов, появившихся благодаря развитому обучению сопромату. Ортогональные это вещи — CS и "совокупная ИТ-индустрия", как ни крути. ИТ-индустрия всегда будет галдеть, что ей умники не нужны, хотя она за обе щёки будет уписывать плоды трудов этих самых умников.

LVV>>>Насчет количественных мер — это как минимум докторская диссертация...

ГВ>>О! Вот тебе вопрос номер 1: где такие диссертации? Иначе мы переводим обсуждение "эффективности" в разряд словоблудия. То есть, я хотел сказать — вкусовых оценок. То есть тут одно из двух: либо нужно снимать вопрос об "эффективности" с повестки дня, либо ясно формулировать критерии этой самой эффективности.
LVV>Далеко ходить не будем — мой аспирант защитил в этом годе как раз диссер на тему количественной оценки качества ПО. Естественно, об измерении всего и со всех сторон речь пока не идет, но видать подходы, куда развивать и как мерить квалификацию — на основе количественного измерения качества.

Кстати, любопытно было бы познакомиться с этой диссертацией. Есть где-нибудь в открытом доступе?

LVV>Я как раз занимаюсь вопросами оценивания действий студента при реализации некоего задания по программированию. Естественно, в рамках обучающей среды, но которая весьма похожа на промышленную. Разница как раз в этом довеске, который отслеживает студента и оценивает.


Любопытно. А поподробней можно?

LVV>>>Но с точки зрения здравого смысла, профессионал должен писать быстрее и совершать значительно меньше ошибок. Он должен быть этому обучен.

ГВ>>С точки зрения способности быстро печатать люди приблизительно одинаковы — 150-250 символов/минуту. Вопрос, как ты понимаешь, упирается в то, что именно печатается. А отсюда мы получаем ещё один не менее интересный вопрос: какова объективная свобода манёвра при выборе решений у "профи", и у вдохновенного любителя? Чем она обусловлена? Напоминаю, что эта самая свобода ограничивается извне общими показателями: общей стоимостью, общим временем, и т.п.
LVV>Мне представляется, что профи должен значительно больше знать фактического материала вроде структур данных, приемов программирования, тех самых паттернов, наконец.

А смысл? Если профи решает те же задачи, что и вчерашний таксист?
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[13]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 18.01.10 14:30
Оценка: 10 (1)
Здравствуйте, Геннадий Васильев, Вы писали:

LVV>>>Мне представляется, что профи должен значительно больше знать фактического материала вроде структур данных, приемов программирования, тех самых паттернов, наконец.


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


ГВ>Что такое "хороший разбор"? С какой точки зрения? С разных точек зрения одно и то же решение может выглядеть полным отстоем и рулезом форева.


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

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

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

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

Отсюда очевидно, что оценка времени работы имеет смысл только при полноценном разборе, иначе фактически затраченое время скорее всего увеличится в n-раз.
Re[5]: Перевод статьи Страуструпа
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 16.01.10 14:42
Оценка: 1 (1)
Здравствуйте, LaptevVV, Вы писали:

J>>Что значит — задумался, он уже несколько лет профессор в универе

LVV>Он и пишет, он и пишет, что 6 лет.
LVV>А задумался он потому, что до него начинает доходить, насколько С++ как язык программирования сложен и ненадежен в реализации.

Хм. По-моему, статья совсем не о C++.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[5]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 17.01.10 12:16
Оценка: 1 (1)
Здравствуйте, LaptevVV, Вы писали:

LVV>Мне кажется, что он задумался о том же, о чем уже писал Вирт (я тут уже выдавал ссылку на его доклад "Потерянная дорога"). В любой профессии профессионал от любителя существенным образом отличается именно профессионализмом.


Профессионализм это уровень, масштаб мышления — чисто для конкретики, а то из твоей формулировки непойми что следует.
Re[20]: Перевод статьи Страуструпа
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.01.10 16:05
Оценка: 1 (1)
Здравствуйте, Ikemefula, Вы писали:

VD>>Полная ерунда! Как первое, так и второе утверждение. Разрушается банальным примером того, что 90% знаменитных людей из мира IT просто не могли получить профильного образования, так как его просто не где было взять.


I>А незнаменитых людей про которых никто не вспомнит, их на порядок больше.


К чему ты это сказал?

VD>>Вообще, человек с инженерным складом ума может справиться с любой проблемой, если подойдет к ее решению серьезно.


I>Вот благодаря такому взгляду нынешняя подготовка инженеров и оказалась в тупике Инженеры как правило сущие дети в педагогик, методике преподавания, психологии и тд.


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

VD>>Более того, если перед прочтением будет реальный опыт, то книги не пройдут даром (как и сидение на лекциях). А если оного опыта нет, то без толку, что книги, что лекции.


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


И с чем спорит это утверждение? Я тоже считаю, что практика — это главное. Но практика без теории мало эффективна. Человек должен сталкнуться с проблемой. Тогда он сможет найти литературу облегчающую решение этой проблемы и познав теорию справиться с проблемой. Образование же пытается идти от обратного. Людям на всякий пожарный запихивают в голову все что попало.

VD>>Вы по шесть лет людей учите. Не уж то времени нет?

VD>>Два дня в неделю нужно посвящать практическим занятиям. Или так. На первом курсе один день, а на последнем не менее трех.

I>5 лет.


Тоже не мало. Но если надо можно и по 6 учить.

I>Два дня в неделю — это надо выкинуть 4 предмета из каждых 10, при том где то 30 процентов это общие предмты вроде физики, математики и тд.


А они эти 10 предметов вообще нужны? Программисту в 99% случаев средней школы за глаза хватает. Зачем программисту физика уровня выше школьной программы? А матанализ зачем? Мозг развивать? Может тогда лучше развивать мозг реальным программированием.

Мое мнение специализация как раз нужна в этих вот физиках и математиках. Вот если программист хочет посвятить себя неким облостям деятельности где нужна высшая математика, то пусть и учит ее на верхних ступенях обучения. Возможно как воторое высшее образование. А возможно на 6-ом курсе (которого пока нет).


В общем, вы (учителя) сами создали проблему там где ее не было.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re: Перевод статьи Страуструпа
От: Курилка Россия http://kirya.narod.ru/
Дата: 13.01.10 11:20
Оценка: -1
Здравствуйте, LaptevVV, Вы писали:

LVV>Вот дали интересную ссылку на хабре:

LVV>http://dbarashev.habrahabr.ru/blog/80623/#habracut

LVV>Поднимает вопрос, чему и как учить в программировании...

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

Кросспостите
Автор: alexeiz
Дата: 13.01.10
?
Re[3]: Перевод статьи Страуструпа
От: jazzer Россия Skype: enerjazzer
Дата: 14.01.10 01:01
Оценка: :)
Здравствуйте, LaptevVV, Вы писали:

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

LVV>Страуструп же задумался о преподавании...

Что значит — задумался, он уже несколько лет профессор в универе
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re[10]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 14.01.10 19:05
Оценка: :)
Здравствуйте, jazzer, Вы писали:

J>ну, именно он был в оппозиции лямбдам в С++0х, говоря что-то вроде "Я буду голосовать против любого предложения, если оно будет сложнее в использовании, чем буст.лямбда", и он же был одним из "могильщиков" концепций в том виде, в котором они были предложены в С++0х, напирая именно на их чрезмерную сложность.


Ну за двадцать лет сам понял, чего наворотил
Re[11]: Перевод статьи Страуструпа
От: VladD2 Российская Империя www.nemerle.org
Дата: 14.01.10 19:13
Оценка: +1
Здравствуйте, LaptevVV, Вы писали:

LVV>Да. Именно понимание указателей в купе с Сишным понятием массива — это краеугольный камень владения Си. Если этого не понять — там делать просто нечего. Я, помнится, сидел над этим довольно долго. И по разным книжкам. Библия Кернигана и Ричи почему-то для меня в этом вопросе ничего не прояснила.


Я указатели принял на ура, хотя много раз слышал, что многие их очень плохо понимают. Но тут вопрос в другом, обучение Си — это не обучение программировнию как таковому. Это обучение того как устроена машина и как ее программировать на низком уровне.

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

VD>>А что сложного в Лиспе?

LVV>Синтаксически — ничего. Семантически — тоже несколько мозги повернуть надо...

Это потому, что ты повернул мозги сями и паскалем. Если изучать его перед ними понимать, что изучаешь функциональный ассемблер, и изучать только базовые вещи, то все будет ОК. Хотя хороших учебных материалов по лиспу практически нет. Такое ощущение, что фонкциональщики вообще утратили способность излагать свои мысли просто и доступно.

Кстати, ты пробовал читать мое введение в Немерле? Я уже две части написал. Очень интересно было бы послушать мнение того кто профессионально занимается обучением. А еще интереснее было бы попробовать обучить кого-то начинающего по такому принципу.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[4]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 15.01.10 09:16
Оценка: +1
Здравствуйте, Driver, Вы писали:

I>>Да вроде как внятно предложил — "Грёзы о профессионализме"


I>>А вообще статья его не научная работа, не монография, так что ждать откровений как то странно


D>Что-то предложил, но это никак не решает проблемы в целом, плюс задал несколько вопросов на которые сам не знает как ответить.


Проблему "в целом" пока никто еще не решил. А хороший вопрос как правило важнее, чем ответ на него.
Вообще научные статьи они больше ценны не ответами, а вопросами.
Re[13]: Перевод статьи Страуструпа
От: Mr.Cat  
Дата: 15.01.10 18:59
Оценка: -1
Здравствуйте, Ikemefula, Вы писали:
I>переход к польской записи создает на ровном месте довольно высокий барьер
Инфиксная запись мало кому и мало когда нужна. Например, в жаве есть горстка предопределенных операторов и переопределять для своих классов их нельзя. В c# переопределять можно — только этим мало кто пользуется. По правде говоря, в c++ можно и порой даже пользуются, а в хаскеле так вообще рай для операторолюбов — вот только про последние два ты даже не вспомнил. Сказать почему? Потому что ты инфиксной записью пользуешься раз в сто лет, чтобы дай бог переписать готовую формулу из справочника — а большинство так вообще не пишет ничего сложнее, чем i=i+1. Также не надо забывать, что в природе существуют (никому не нужные) макросы, позволяющие писать инфиксно. И нет, все равно надо плакать и кричать про польскую бяку. Ду да ладно, дело твое. Кстати, по моим ощущениям многие выражения становятся наоборот более читабельными при переходе к префиксной нотации. Например, сложные логические выражения.

Есть еще один момент, о котором я хотел бы упомянуть, но сделаю это позже (если не забуду) — и так дел куча, а я уже задолжал в этой теме нашему коллеге LaptevVV комментарии к "наезду" на C c Паскалем.
Re[13]: Перевод статьи Страуструпа
От: VladD2 Российская Империя www.nemerle.org
Дата: 15.01.10 19:11
Оценка: +1
Здравствуйте, Ikemefula, Вы писали:

VD>>Это чушь. Не удобне, возможно. Но более чем пригоден.

VD>>Что непонятного в:
VD>>
VD>;> (my-func (+ 1 2) (* 3 4))
VD>;>


I>"непригоден для восприятия человеком" польская запись и скобки.


Для справки. Это не польская нотация. В польской нотации как раз скобок нет за ненадобностью. Там операторы идут после операндов.

Что до скобок, то это дело привычки. Я сам их плохо воспринимаю, но понимаю, что ХМЛ читать не проще.
Скорее в Лиспе проблематичным является отсутствие инфиксной нотации и соответственно приоритетов с ассоциативностью.

I>К тому моменту, когда люди начинают учить программирование, они уже имеют за спиной не менее 10 лет использования математики-арифметики, где все записывается вот так — sin(x) + cos(x)


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

I>переход к польской записи создает на ровном месте довольно высокий барьер


Ну, про "польской записи" я уже сказал.

I>Откуда берется этот барьер ?


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

I>принять решение читать или не читать.

Люди за 10 лет еще привыкают к алогичном мышлению и много чему еще. Программирование все же к матиматике имеет очень отдаленное отношение. Так что участь программировать можно и немного поменять привычки.

I>если взять чтото посложнее, то сразу возникает проблема


I>(+1 (* 4 3))


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


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

I>Вот по прошествии тех же 10 лет он сможет читать такое так же легко как и 1+4*3 и никак не раньше. Но, вобщем то, родным способом это все равно не станет даже после 20 лет.


Думаю, что полугода будет достаточно.

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

Уж лучше пусть люди ломают привычки, чем терпеть такую ситуацию.

I>Кроме этого нужно еще и бороться со скобками,


Их не больше чем в любой С-программе. Только тип скобок один а не 3. Так что это домыслы.

I>Это другой момент — десять лет люди привыкают читать текст и выражения слева направо сверху вниз и здесь то же самое — текст, записаный как то иначе читать крайне тяжело.


Что?

I>С программами все точно так же, при этом кол.во конструкций на строку должно стремиться к минимуму.


Тебе и не снилось насколько Лисп минималистичен. Это еще один миф.

I>Скобки этот порядок нарушают. Что бы выделить подвыражение, нужно ориентироваться сначала по скобкам, а потом уже прочесть выделенное и все это делается в уме.


Человек владеющий лиспом читает код не хуже того кто читает С. Привычка, да нужна. Но скобки Лиспа — это не просто причуда. Это базис минималистичности и мощьности. За неудобства ты получаешь тандем функционального программирования и метапрограммирования. И это в языке с пятидясителетней историей!!! Только языки последнего десятилетия (Темплэйт-Хаскель и Немерле) подошли к его возможностям (причем все равно есть аспекты по кторым Лисп и сейчас первый).

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


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

I>Т.е. лисп рубит на корню идею распростренения, следовательно его нельзя просто и ненавязчиво показать, передать. Лисп требует подготовленой аудитории, которая

I>1. умеет польскую запись на раз
I>2. имеет опыт чтения программ

Изучение и должно дать этот опыт чтения. При этом оно еще должно дать много полезных навыков. Эти навыки не получить изучая Паскаль или Си.

В общем, то я практически на твоей стороне. Я тоже считаю Лисп не привычным. Более того он динамически типизированный, что несет еще ряд проблем. Потому лично я развиваю Nemerle. Это как раз симбиоз Си, ООП и Лиспа лишенный недостатков Лиспа, но обладающие его достоинствами. Проблема только в том что, он очень молод и за ним не стоит какая-то крупная известная контора.

I>Например заинтересовать какого школьника каким нибудь Питоном очень и очень просто — достаточно показать ему как простецкая строчка решает не конкретное уравнение, а любое уравнение.(разумеется я тут говорю не про дифуры или системы уравнений)


Программист не школьник. Его не нужно заинтересовыать. Он уже выбрал проффеисию и обязан стать проффесионалом в ней. И Лисп (или его более современный аналог) — это неотъемлемая часть арсенала которым должен овладеть хороший программист. Вот без Обероно он переживет (есть масса аналогов). Без Паскля — легко. А без Лиспа и Пролога получится недоучка. По этому хотя бы на базовом уровне (уровне концепций) их нужно преподавать везде.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[15]: Перевод статьи Страуструпа
От: Mr.Cat  
Дата: 15.01.10 23:44
Оценка: +1
Здравствуйте, Ikemefula, Вы писали:
I>ВОзможно даже и не лисп. а нечто для вычисления всяких выражений в виде с префиксной записью.
Ты слишком много значения придаешь синтаксису, причем не в самой значительной части (префиксность/инфиксность — причем никто не мешает в лиспах пользоваться макрами для инфиксной записи).
Вот у apl (ну или j) — да, девиантный синтаксис, а все эти лиспы с питонами — они больше парадигмами различаются, чем синтаксисом.
Re[15]: Перевод статьи Страуструпа
От: FR  
Дата: 16.01.10 06:51
Оценка: -1
Здравствуйте, Ikemefula, Вы писали:


VD>>А выражение на Хаскеле или ОКамле тоже читать невозможно?


I>Возможно. Эти языки, кстати, не далеко от лиспа ушли.


Эти языки гораздо ближе к рекламируемой тобой привычной математической нотации чем
сиобразные или паскаль.
Re[21]: Перевод статьи Страуструпа
От: FR  
Дата: 16.01.10 11:53
Оценка: -1
Здравствуйте, Ikemefula, Вы писали:

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


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


I>>>Я с этим сильно не согласен. Кроме того, у хаскеля кривая входа слишком крутая.


FR>>Обоснуй первое предложение, хаскель согласен крутоват.


I>на уровене f n = n + 1 действительно всё просто.


I>а если будет чтото посложнее, типа


I>sum :: [Integer] -> Integer

I>sum = 0
I>sum (x:xs) = x + sum xs

I>то такая конструкция вобщем то ничего не скажет новичку


Такая

int Sum(const int *Src, int Size)
{
int Result = 0;

for(;Src < Src + Size; ++Src) {
    Result += *Src;
    }

return Result;
}


ничем для новичка не лучше.
Re[13]: Перевод статьи Страуструпа
От: Шахтер Интернет  
Дата: 16.01.10 13:06
Оценка: :)
Здравствуйте, LaptevVV, Вы писали:

LVV>Здравствуйте, Шахтер, Вы писали:


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


LVV>>>Здравствуйте, Mr.Cat, Вы писали:


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

LVV>>>>>>>мощном
LVV>>>>>>>Паскаль и С
MC>>>>>>Что-то меня смущает в этом сочетании.
LVV>>>>>Языки одного уровня...
MC>>>>Мне кажется, все три слова вместе как-то не смотрятся.
LVV>>>Я не вижу обоснования ни от вас, ни от Шахтера.

Ш>>А какие нужны обоснования? То что мерседес лучше жигулей, неужели нужно обосновывать?

LVV>А Паскаль или С вы считаете Мерседесом? Или наоборот — жигулями?

Я думаю, должно быть ясно, что С -- это мерседес по сравнению с Паскалем-жигулем.
В XXI век с CCore.
Копай Нео, копай -- летать научишься. © Matrix. Парадоксы
Re[22]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 16.01.10 13:20
Оценка: -1
Здравствуйте, FR, Вы писали:

FR>Такая


FR>
FR>int Sum(const int *Src, int Size)
FR>{
FR>int Result = 0;

FR>for(;Src < Src + Size; ++Src) {
FR>    Result += *Src;
FR>    }

FR>return Result;
FR>}
FR>


FR>ничем для новичка не лучше.


если буквально подсунуть новичку именно такой пример, то да, толку не будет.

Но его объяснить будет гораздо легче, чем тот что на хаскеле.

У новичка нет в голове понятий список, массив, последовательность и тд и тд и тд.

соответсвенно прочесть запись на хаскеле он в принципе не в состоянии.

в случае с сишной записью можно объяснить нектоорые кусочки и человек сходу поймет все необходимые понятия для чтения примера.
Re[23]: Перевод статьи Страуструпа
От: FR  
Дата: 16.01.10 13:36
Оценка: -1
Здравствуйте, 24, Вы писали:

24>то новичку её понять будет проще, чем хаскель, т.к. понимание рекурсии у многих приходит далеко не сразу.


Это просто срабатывают твои привычки, код на хаскеле или лучше ML образных гораздо более понятный, простой и декларативный.
Re[23]: Перевод статьи Страуструпа
От: FR  
Дата: 16.01.10 13:41
Оценка: +1
Здравствуйте, Ikemefula, Вы писали:


I>если буквально подсунуть новичку именно такой пример, то да, толку не будет.


Конечно на сиобразных без компилятора легче ошибиться

I>Но его объяснить будет гораздо легче, чем тот что на хаскеле.


Я согласен что Хаскель не очень хорош для новичка, ML и его производные (SML, Caml light, OCaml) гораздо лучше.

I>У новичка нет в голове понятий список, массив, последовательность и тд и тд и тд.


I>соответсвенно прочесть запись на хаскеле он в принципе не в состоянии.


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

I>в случае с сишной записью можно объяснить нектоорые кусочки и человек сходу поймет все необходимые понятия для чтения примера.


Это говорит только твоя привычка. И как раз Хаскельный код объяснить будет проще.
Re[13]: Перевод статьи Страуструпа
От: yumi  
Дата: 16.01.10 14:03
Оценка: -1
Здравствуйте, Ikemefula, Вы писали:

I>К тому моменту, когда люди начинают учить программирование, они уже имеют за спиной не менее 10 лет использования математики-арифметики, где все записывается вот так — sin(x) + cos(x)

I>переход к польской записи создает на ровном месте довольно высокий барьер

Сам замерял? Или кто на ушко шепнул?

I>Откуда берется этот барьер ?


Вот и мне интересно, где же этот барьер

I>если взять чтото посложнее, то сразу возникает проблема

I>(+1 (* 4 3))

Оченама сложно!

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


Правда правда?

I>Вот по прошествии тех же 10 лет он сможет читать такое так же легко как и 1+4*3 и никак не раньше. Но, вобщем то, родным способом это все равно не станет даже после 20 лет.


Вот мне интересно, откуда же вы такие цифры точные берете?

I>Кроме этого нужно еще и бороться со скобками,


Кто так сказал? Зачем с ними бороться?
Lisp is not dead. It’s just the URL that has changed:
http://clojure.org
Re[18]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 16.01.10 14:53
Оценка: :)
Здравствуйте, yumi, Вы писали:

VD>>>(+ 1 2 3 4 5 6 7 8 9)

I>>Я там пропустил знаки, хотел + и — чередовать, но поспешил

Y>1 — 2 + 3 — 4 + 5 — 6 + 7 — 8 + 9 == (+ 1 -2 3 -4 5 -6 7 -8 9)


да, оно. Вот сгенери тких и подобных по сто штук, дай какому новичку и сравни результаты, по времени, по кол.ву ошибок, и тоже самое нужно прогнать в стрессовой обстановке, например стоять над испытуемым с секундомером и давать кое какие комманды.
Re[20]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 17.01.10 06:30
Оценка: :)
Здравствуйте, yumi, Вы писали:

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


I>>>>лисп от питона отличается как табуретка от бегемота.


I>>P.S. стоит читать ссылки, которые сюда сам же и постишь


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


Да, очень сильно отличаются, что и видно по ссылке что ты привел.

Я уже говорил, что у тебя скобки теже — пробельные символы
Re[20]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 17.01.10 06:33
Оценка: +1
Здравствуйте, yumi, Вы писали:

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


Y>Слив засчитан, а я то надеялся, что ты опять попробуешь реабилитироваться, например, мол имел ввиду чередовать не + и -, а + и *. И кстати, как раз таки, префиксная запись менее подвержена ошибкам, т.к. тут нет приоритетов операций.


Это если ты ребенку в 7 лет такое дашь, то да.

А после 10 лет школы такое вещать как минимум смешно.

>Вот ответь мне на один вопрос, ты помнишь таблицу приоритетов операторов твоего любимого языка С/С++/Java/C#?


Про арифметические помню с начальной школы, остальные- нет.

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


У меня тоже бывают такие ошибки, где то раз в полгода-год по одной.
Re[11]: Перевод статьи Страуструпа
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 18.01.10 05:24
Оценка: :)
Здравствуйте, FR, Вы писали:

ГВ>>Вот чего я не понимаю, так это почему, что Струструп, что Вирт упускают из виду контекст, то есть задачи, которые решают программисты. Да, на простеньком UI+DB профи сильно отстанет от хорошо дрессированного любителя, это к гадалке не ходи. Но в то же время, профи (по идее) сможет решить те задачи, на которые любитель даже не позарится.


FR>Хорошо дрессированный любитель == профессионал разве нет?


ИМХО, если совсем строго, то профессионал от любителя отличается только тем, что живёт благодаря своему ремеслу (профессии). К умениям и знаниям это относится косвенно.

FR>Вообще надо определится с терминами.


Мне бы тоже этого хотелось. Пока что выходит, что "профессионал" — это такой титул, которым награждают другие профессионалы. Рекурсивное определение.

P.S.: Пока что я пытаюсь в этой дискуссии употреблять выражение "профессионал" по сугубо эмоциональным критериям. Скользкий путь, конечно, но что поделать!
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[10]: Перевод статьи Страуструпа
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 18.01.10 05:50
Оценка: :)
Здравствуйте, FR, Вы писали:

FR>И не увидим, они упускают одну вещь, все-таки производительность и эффективность программиста очень существенно зависит от таланта, [...]


Да... Ещё не все терминологические рубежи сданы. Теперь мы сможем сцепиться по поводу того, кого считать талантом.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[2]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 13.01.10 12:15
Оценка:
Здравствуйте, Курилка, Вы писали:

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


LVV>>Вот дали интересную ссылку на хабре:

LVV>>http://dbarashev.habrahabr.ru/blog/80623/#habracut

LVV>>Поднимает вопрос, чему и как учить в программировании...

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

К>Кросспостите
Автор: alexeiz
Дата: 13.01.10
?

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

В любом случае, перевод почитать интересно.
Страуструп же задумался о преподавании...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[7]: Перевод статьи Страуструпа
От: jazzer Россия Skype: enerjazzer
Дата: 14.01.10 07:42
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>>>А задумался он потому, что до него начинает доходить, насколько С++ как язык программирования сложен и ненадежен в реализации.

J>>Э-э-э....
J>>Я не думаю, что к создателю языка, активно принимающему участие в его поддержке и разработке в комитете, применима фраза "до него начинает доходить"
LVV>А мне кажется, что только начав преподавать, он начал осознавать.
Он начал осознавать, что С++ сложен в реализации или в преподавании? Ты вроде вначале говорил о реализации.
А насчет того, что С++ легок в преподавании, Страуструп никогда и не говорил, он отлично представляет себе сложность языка и высоту порога вхождения, это видно по многим его гораздо более ранним высказываниям.
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re[8]: Перевод статьи Страуструпа
От: denisko http://sdeniskos.blogspot.com/
Дата: 14.01.10 10:51
Оценка:
Здравствуйте, jazzer, Вы писали:

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


LVV>>>>А задумался он потому, что до него начинает доходить, насколько С++ как язык программирования сложен и ненадежен в реализации.

J>>>Э-э-э....
J>>>Я не думаю, что к создателю языка, активно принимающему участие в его поддержке и разработке в комитете, применима фраза "до него начинает доходить"
LVV>>А мне кажется, что только начав преподавать, он начал осознавать.
J>Он начал осознавать, что С++ сложен в реализации или в преподавании? Ты вроде вначале говорил о реализации.
J>А насчет того, что С++ легок в преподавании, Страуструп никогда и не говорил, он отлично представляет себе сложность языка и высоту порога вхождения, это видно по многим его гораздо более ранним высказываниям.
Судя по книжке и интервью его раньше он воспринимал это как доблесть. Сейчас, начал понимать, что что-то не так.
<Подпись удалена модератором>
Re[9]: Перевод статьи Страуструпа
От: jazzer Россия Skype: enerjazzer
Дата: 14.01.10 12:28
Оценка:
Здравствуйте, denisko, Вы писали:

J>>А насчет того, что С++ легок в преподавании, Страуструп никогда и не говорил, он отлично представляет себе сложность языка и высоту порога вхождения, это видно по многим его гораздо более ранним высказываниям.

D>Судя по книжке и интервью его раньше он воспринимал это как доблесть. Сейчас, начал понимать, что что-то не так.
ну, именно он был в оппозиции лямбдам в С++0х, говоря что-то вроде "Я буду голосовать против любого предложения, если оно будет сложнее в использовании, чем буст.лямбда", и он же был одним из "могильщиков" концепций в том виде, в котором они были предложены в С++0х, напирая именно на их чрезмерную сложность.
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re[7]: Перевод статьи Страуструпа
От: Mr.Cat  
Дата: 14.01.10 14:10
Оценка:
Здравствуйте, LaptevVV, Вы писали:
LVV>мощном
LVV>Паскаль и С
Что-то меня смущает в этом сочетании.
Re[10]: Перевод статьи Страуструпа
От: denisko http://sdeniskos.blogspot.com/
Дата: 14.01.10 15:11
Оценка:
Здравствуйте, jazzer, Вы писали:

J>ну, именно он был в оппозиции лямбдам в С++0х, говоря что-то вроде "Я буду голосовать против любого предложения, если оно будет сложнее в J>использовании, чем буст.лямбда"

По моему, это что-то из разряда эмоций. В любом случае, использованию б.лямбды требует достаточно высокого уровня и опыта в наступлении на грабли также достаточно высокого уровня.
<Подпись удалена модератором>
Re[11]: Перевод статьи Страуструпа
От: jazzer Россия Skype: enerjazzer
Дата: 14.01.10 15:32
Оценка:
Здравствуйте, denisko, Вы писали:

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


J>>ну, именно он был в оппозиции лямбдам в С++0х, говоря что-то вроде "Я буду голосовать против любого предложения, если оно будет сложнее в J>использовании, чем буст.лямбда"

D>По моему, это что-то из разряда эмоций. В любом случае, использованию б.лямбды требует достаточно высокого уровня и опыта в наступлении на грабли также достаточно высокого уровня.
Не, речь шла о том, что в буст.лямбде можно просто написать _1+2*_2, и все.
И он стремится именно к такой простоте, только на стероидах (т.е. чтоб можно было писать _1.поле), тут никаких эмоций нет.
Речь о полиморфных лямбдах, естественно.
В С++0х только мономорфные.
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re[8]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 14.01.10 16:02
Оценка:
Здравствуйте, Mr.Cat, Вы писали:

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

LVV>>мощном
LVV>>Паскаль и С
MC>Что-то меня смущает в этом сочетании.
Языки одного уровня...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[9]: Перевод статьи Страуструпа
От: Шахтер Интернет  
Дата: 14.01.10 16:08
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>Здравствуйте, Mr.Cat, Вы писали:


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

LVV>>>мощном
LVV>>>Паскаль и С
MC>>Что-то меня смущает в этом сочетании.
LVV>Языки одного уровня...

Да ну.
В XXI век с CCore.
Копай Нео, копай -- летать научишься. © Matrix. Парадоксы
Re[9]: Перевод статьи Страуструпа
От: Mr.Cat  
Дата: 14.01.10 16:21
Оценка:
Здравствуйте, LaptevVV, Вы писали:
LVV>>>мощном
LVV>>>Паскаль и С
MC>>Что-то меня смущает в этом сочетании.
LVV>Языки одного уровня...
Мне кажется, все три слова вместе как-то не смотрятся.
Re[5]: Перевод статьи Страуструпа
От: VladD2 Российская Империя www.nemerle.org
Дата: 14.01.10 18:09
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>А задумался он потому, что до него начинает доходить, насколько С++ как язык программирования сложен и ненадежен в реализации.


Ну, наконец то! Не прошло и двадцати лет!
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[7]: Перевод статьи Страуструпа
От: VladD2 Российская Империя www.nemerle.org
Дата: 14.01.10 18:11
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>И в преподавании остро нуждаешься в простом но мощном языке. Вот каков был Паскаль и С (кстати тоже).


Си никогда не был простым, а Паскаль не был мощным.
Скорее уж тогда Лисп. Проще не найти, но при этом мощность очень впечатляющая.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[6]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 14.01.10 18:41
Оценка:
Здравствуйте, VladD2, Вы писали:

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


LVV>>А задумался он потому, что до него начинает доходить, насколько С++ как язык программирования сложен и ненадежен в реализации.


VD>Ну, наконец то! Не прошло и двадцати лет!

Не... Прошло 24 года — он сам об этом пишет.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[8]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 14.01.10 18:44
Оценка:
Здравствуйте, VladD2, Вы писали:

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


LVV>>И в преподавании остро нуждаешься в простом но мощном языке. Вот каков был Паскаль и С (кстати тоже).


VD>Си никогда не был простым, а Паскаль не был мощным.

VD>Скорее уж тогда Лисп. Проще не найти, но при этом мощность очень впечатляющая.
Ну, с Лиспом — это особая история. А вот С все же очень прост.
Единственное место, которое там нужно переварить — это указатели и массивы.
В остальном — да, есть несколько необычные моменты для паскалиста (например, выражения),
но в принципе они — не сложные и к ним довольно быстро привыкаешь.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[10]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 14.01.10 18:44
Оценка:
Здравствуйте, Mr.Cat, Вы писали:

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

LVV>>>>мощном
LVV>>>>Паскаль и С
MC>>>Что-то меня смущает в этом сочетании.
LVV>>Языки одного уровня...
MC>Мне кажется, все три слова вместе как-то не смотрятся.
Я не вижу обоснования ни от вас, ни от Шахтера.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[9]: Перевод статьи Страуструпа
От: VladD2 Российская Империя www.nemerle.org
Дата: 14.01.10 18:52
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>Ну, с Лиспом — это особая история.


И что же с ним?

LVV>А вот С все же очень прост.


Как сказать.

LVV>Единственное место, которое там нужно переварить — это указатели и массивы.


Массивов том вообще как таковых нет. А указатель — это краеугольный камень. И указатель не так прост как кажется (тому кто его уже понял).

В плане же реального программирования С совсем не прост. Это весьма низкоуровневый язык. Это нужно понимать и учитывать. Когда учат программировать, то этому практически не уделяют внимания.

LVV>В остальном — да, есть несколько необычные моменты для паскалиста (например, выражения), но в принципе они — не сложные и к ним довольно быстро привыкаешь.


А что сложного в Лиспе?
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[8]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 14.01.10 19:04
Оценка:
Здравствуйте, jazzer, Вы писали:

J>Он начал осознавать, что С++ сложен в реализации или в преподавании? Ты вроде вначале говорил о реализации.


Он и там и там сложен.
Re[10]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 14.01.10 19:06
Оценка:
Здравствуйте, VladD2, Вы писали:

LVV>>А вот С все же очень прост.

VD>Как сказать.
LVV>>Единственное место, которое там нужно переварить — это указатели и массивы.
VD>Массивов том вообще как таковых нет. А указатель — это краеугольный камень. И указатель не так прост как кажется (тому кто его уже понял).
VD>В плане же реального программирования С совсем не прост. Это весьма низкоуровневый язык. Это нужно понимать и учитывать. Когда учат программировать, то этому практически не уделяют внимания.
Да. Именно понимание указателей в купе с Сишным понятием массива — это краеугольный камень владения Си. Если этого не понять — там делать просто нечего. Я, помнится, сидел над этим довольно долго. И по разным книжкам. Библия Кернигана и Ричи почему-то для меня в этом вопросе ничего не прояснила.
LVV>>В остальном — да, есть несколько необычные моменты для паскалиста (например, выражения), но в принципе они — не сложные и к ним довольно быстро привыкаешь.
VD>А что сложного в Лиспе?
Синтаксически — ничего. Семантически — тоже несколько мозги повернуть надо...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[11]: Перевод статьи Страуструпа
От: VladD2 Российская Империя www.nemerle.org
Дата: 14.01.10 19:15
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>Он непригоден для восприятия человеком.


Это чушь. Не удобне, возможно. Но более чем пригоден.
Что непонятного в:
 (my-func (+ 1 2) (* 3 4))
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[12]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 14.01.10 19:28
Оценка:
Здравствуйте, VladD2, Вы писали:

LVV>>Да. Именно понимание указателей в купе с Сишным понятием массива — это краеугольный камень владения Си. Если этого не понять — там делать просто нечего. Я, помнится, сидел над этим довольно долго. И по разным книжкам. Библия Кернигана и Ричи почему-то для меня в этом вопросе ничего не прояснила.

VD>Я указатели принял на ура, хотя много раз слышал, что многие их очень плохо понимают. Но тут вопрос в другом, обучение Си — это не обучение программировнию как таковому. Это обучение того как устроена машина и как ее программировать на низком уровне.
Я с этим согласен.
VD>Возможно начинать обучать программированию нужно вообще с ассемблера и подниматься все выше и выше по лестнице высокоуровневости языков. Но я видел много примеров того как люди застревали на том или ном уровне. И если застревание на уровне ассемблера — это вообще клиника, то застревание на уровне С или С++ — это явление наблюдаемое сплошь и рядом.
Знаешь, нас вообще учили в кодах. С пончстием косвенной адресации у меня тоже проблем не было... А влот в языке высокого уровня столкнулся первый раз, когда Си читал...
VD>>>А что сложного в Лиспе?
LVV>>Синтаксически — ничего. Семантически — тоже несколько мозги повернуть надо...
VD>Это потому, что ты повернул мозги сями и паскалем. Если изучать его перед ними понимать, что изучаешь функциональный ассемблер, и изучать только базовые вещи, то все будет ОК. Хотя хороших учебных материалов по лиспу практически нет. Такое ощущение, что фонкциональщики вообще утратили способность излагать свои мысли просто и доступно.
Да, я о Лиспе только по книжкам Лаврова+Силагадзе прочитал...
VD>Кстати, ты пробовал читать мое введение в Немерле? Я уже две части написал. Очень интересно было бы послушать мнение того кто профессионально занимается обучением. А еще интереснее было бы попробовать обучить кого-то начинающего по такому принципу.
Статьи читал, но думать над этим всерьез пока некогда — нужно дописывать свою книжку и статьи в журналы.
Думаю, в феврале смогу начать думать — тогда и отпишу...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[2]: Перевод статьи Страуструпа
От: Sitrix Россия  
Дата: 15.01.10 00:30
Оценка:
Здравствуйте, Курилка, Вы писали:

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


LVV>>Вот дали интересную ссылку на хабре:

LVV>>http://dbarashev.habrahabr.ru/blog/80623/#habracut

LVV>>Поднимает вопрос, чему и как учить в программировании...

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

К>Кросспостите
Автор: alexeiz
Дата: 13.01.10
?


Оригинал статьи и её перевод немного разные вещи, не находите?
Re[2]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 15.01.10 01:05
Оценка:
Здравствуйте, Driver, Вы писали:

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


Да вроде как внятно предложил — "Грёзы о профессионализме"

А вообще статья его не научная работа, не монография, так что ждать откровений как то странно
Re[3]: Перевод статьи Страуструпа
От: Driver  
Дата: 15.01.10 02:54
Оценка:
Здравствуйте, Ikemefula, Вы писали:

...

I>Да вроде как внятно предложил — "Грёзы о профессионализме"


I>А вообще статья его не научная работа, не монография, так что ждать откровений как то странно


Что-то предложил, но это никак не решает проблемы в целом, плюс задал несколько вопросов на которые сам не знает как ответить.
Научная статья или нет, но опубликована на научном сайте acm.org (см. оригинал).
Re[2]: Перевод статьи Страуструпа
От: igna Россия  
Дата: 15.01.10 06:49
Оценка:
Здравствуйте, Driver, Вы писали:

D>...не предложил никаких конкретных путей решения


Как же, он предложил сертификацию программ и некоторых программистов.
Re[14]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 15.01.10 09:13
Оценка:
Здравствуйте, igna, Вы писали:

I>>переход к польской записи создает на ровном месте довольно высокий барьер


I>Ну какой он высокий, не выше чем использование знака равенства для присваивания:


I>
I>    i = i + 1;
I>


Это так кажется.
Напиши генератор арифметических выражений, сгенерируй штук сто и вычисли их на листочке вручную,
тут главное время замерять, и проверь, на что ушло больше времени и где больше ошибок.
Re[14]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 15.01.10 09:18
Оценка:
Здравствуйте, igna, Вы писали:

I>Ну какой он высокий, не выше чем использование знака равенства для присваивания:


I>
I>    i = i + 1;
I>


Для того, что бы научиться легко читать польскую запись, нужно много практики, собственно это я и объяснял в том сообщении на которое ты ответил

Для твоего примера нужно одно единственное объяснение и хватит пару-тройку примеров для закрепления.
Re[11]: Перевод статьи Страуструпа
От: Шахтер Интернет  
Дата: 15.01.10 14:22
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>Здравствуйте, Mr.Cat, Вы писали:


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

LVV>>>>>мощном
LVV>>>>>Паскаль и С
MC>>>>Что-то меня смущает в этом сочетании.
LVV>>>Языки одного уровня...
MC>>Мне кажется, все три слова вместе как-то не смотрятся.
LVV>Я не вижу обоснования ни от вас, ни от Шахтера.

А какие нужны обоснования? То что мерседес лучше жигулей, неужели нужно обосновывать?
В XXI век с CCore.
Копай Нео, копай -- летать научишься. © Matrix. Парадоксы
Re[12]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 15.01.10 17:56
Оценка:
Здравствуйте, Шахтер, Вы писали:

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


LVV>>Здравствуйте, Mr.Cat, Вы писали:


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

LVV>>>>>>мощном
LVV>>>>>>Паскаль и С
MC>>>>>Что-то меня смущает в этом сочетании.
LVV>>>>Языки одного уровня...
MC>>>Мне кажется, все три слова вместе как-то не смотрятся.
LVV>>Я не вижу обоснования ни от вас, ни от Шахтера.

Ш>А какие нужны обоснования? То что мерседес лучше жигулей, неужели нужно обосновывать?

А Паскаль или С вы считаете Мерседесом? Или наоборот — жигулями?
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[14]: Перевод статьи Страуструпа
От: Курилка Россия http://kirya.narod.ru/
Дата: 15.01.10 19:29
Оценка:
Здравствуйте, VladD2, Вы писали:

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


VD>>>Это чушь. Не удобне, возможно. Но более чем пригоден.

VD>>>Что непонятного в:
VD>>>
VD>;>> (my-func (+ 1 2) (* 3 4))
VD>;>>


I>>"непригоден для восприятия человеком" польская запись и скобки.


VD>Для справки. Это не польская нотация. В польской нотации как раз скобок нет за ненадобностью. Там операторы идут после операндов.


На самом деле это как раз скорее польская запись, а ты имеешь в виду, судя по всему, обратную польскую запись.
Хотя, в оригинальной польской записи скобок не было, а операторы все бинарные, тогда как для обратной записи можно использовать операторы с произвольной арностью.
Re[15]: Перевод статьи Страуструпа
От: VladD2 Российская Империя www.nemerle.org
Дата: 15.01.10 22:54
Оценка:
Здравствуйте, Курилка, Вы писали:

К>На самом деле это как раз скорее польская запись, а ты имеешь в виду, судя по всему, обратную польскую запись.


Возможно я путаю прямую и обратную, но польская нотация тем и отличается, что в ней не нужны скобки. Это по сути стек. Так что скобки ему не нужны.

К>Хотя, в оригинальной польской записи скобок не было, а операторы все бинарные, тогда как для обратной записи можно использовать операторы с произвольной арностью.


Ну, да. Потому ее и применяют для описания стеков вычислений.

Лисп же — это немного другое. Лисп использует списки. По идее их можно было бы выражать и в традиционной форме функций:
(f a b)         ->; f(a, b) 
(a (a b) (c d)) ->; a(a(b), c(d))

Может и правда это упростило бы восприятие. Правда, от реальной беды — отсутствия привычной нам записи выражений с приоритетами и ассоциативностью — это все равно не спасло бы. Плюс когда такая запись выражает именно список, то список выглядел бы более чем странно. В прочем можно было бы писать:
list(a, b, c)
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: Перевод статьи Страуструпа
От: VladD2 Российская Империя www.nemerle.org
Дата: 15.01.10 22:57
Оценка:
Здравствуйте, igna, Вы писали:

I>Как же, он предложил сертификацию программ и некоторых программистов.


И сразу же сам признал, что в настоящих условиях — это чушь.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[14]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 15.01.10 23:21
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Для справки. Это не польская нотация. В польской нотации как раз скобок нет за ненадобностью. Там операторы идут после операндов.


Я слегка перепутал. Разницы никакой, все равно это неестественный порядок.

VD>Что до скобок, то это дело привычки. Я сам их плохо воспринимаю, но понимаю, что ХМЛ читать не проще.


В большинстве случаев в XML не нужно вчитываться.

VD>Есть такое дело, но тем не менее при желании привычки можно изменить.


Это желание как то возникает у крайне малого кол.ва людей.

VD>Люди за 10 лет еще привыкают к алогичном мышлению и много чему еще. Программирование все же к матиматике имеет очень отдаленное отношение. Так что участь программировать можно и немного поменять привычки.


Не получится немного поменять, нужно те же 10 лет и это никакой не парадокс.

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

VD>А выражение на Хаскеле или ОКамле тоже читать невозможно?

Возможно. Эти языки, кстати, не далеко от лиспа ушли.

VD>Не, я согласен, что это действительно проблема, но как раз на начальном этапе обучения она ничтожно мала, по сравнению с тем что дает изучение этого языка. Я вот очень жалею, что не изучил его в ранней молодости.


Наоборот, на начальном этапе это сильная нагрузка для программиста.

I>>Вот по прошествии тех же 10 лет он сможет читать такое так же легко как и 1+4*3 и никак не раньше. Но, вобщем то, родным способом это все равно не станет даже после 20 лет.


VD>Думаю, что полугода будет достаточно.


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

1+2+3+4+5+6+7+8+9

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

И другое момент — все книги используют такую запись.

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

VD>Проблема в том, что Вузы выпускают совершенно не подготовленных к реальному программированию людей которые быстро и легко прерващаются в серые массы быдлокодеров.


Ну с этим я и не спорю, я про лисп говорил.

VD>Их не больше чем в любой С-программе. Только тип скобок один а не 3. Так что это домыслы.


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

I>>Это другой момент — десять лет люди привыкают читать текст и выражения слева направо сверху вниз и здесь то же самое — текст, записаный как то иначе читать крайне тяжело.


VD>Что?


??? Там дальше вроде как разъяснения были.

I>>С программами все точно так же, при этом кол.во конструкций на строку должно стремиться к минимуму.

VD>Тебе и не снилось насколько Лисп минималистичен. Это еще один миф.

Минималистичность должна читаться на раз.

VD>Человек владеющий лиспом читает код не хуже того кто читает С. Привычка, да нужна. Но скобки Лиспа — это не просто причуда. Это базис минималистичности и мощьности.


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

>За неудобства ты получаешь тандем функционального программирования и метапрограммирования. И это в языке с пятидясителетней историей!!!


Эта пятидесятилетняя история показывает, что люди не готовы в массе ломать привычки. Т.е. нужно принять как условие этот фактор. Лисперы это почемуто упорно игнорируют.

>Только языки последнего десятилетия (Темплэйт-Хаскель и Немерле) подошли к его возможностям (причем все равно есть аспекты по кторым Лисп и сейчас первый).


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

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


VD>Для обучения — в самый раз. Обучение — это в первую очередь развитие мозга. Уж лучше человек будет ломать голову над непривычным синтаксисом, чем учиться быдлокодить.


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

VD>Изучение и должно дать этот опыт чтения. При этом оно еще должно дать много полезных навыков. Эти навыки не получить изучая Паскаль или Си.


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

VD>В общем, то я практически на твоей стороне. Я тоже считаю Лисп не привычным. Более того он динамически типизированный, что несет еще ряд проблем. Потому лично я развиваю Nemerle. Это как раз симбиоз Си, ООП и Лиспа лишенный недостатков Лиспа, но обладающие его достоинствами.


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

VD>Программист не школьник. Его не нужно заинтересовыать. Он уже выбрал проффеисию и обязан стать проффесионалом в ней. И Лисп (или его более современный аналог) — это неотъемлемая часть арсенала которым должен овладеть хороший программист. Вот без Обероно он переживет (есть масса аналогов). Без Паскля — легко. А без Лиспа и Пролога получится недоучка. По этому хотя бы на базовом уровне (уровне концепций) их нужно преподавать везде.


На уровне концепций он преподается, но вот позиции утрачивает, глядя например на смену курса в мит и стенфорде.
Re[14]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 15.01.10 23:27
Оценка:
Здравствуйте, Mr.Cat, Вы писали:

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

I>>переход к польской записи создает на ровном месте довольно высокий барьер
MC>Инфиксная запись мало кому и мало когда нужна.

Открой книгу по математике да посмотри. Вообще любую книгу где есть мало мальски формул разных.

>В c# переопределять можно — только этим мало кто пользуется.


Пользуются там, где это действительно требуется.

>Потому что ты инфиксной записью пользуешься раз в сто лет, чтобы дай бог переписать готовую формулу из справочника — а большинство так вообще не пишет ничего сложнее, чем i=i+1.


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

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


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

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

Вот с питоном все проще — школьник сам легко заинтересуется.
Re[15]: Перевод статьи Страуструпа
От: VladD2 Российская Империя www.nemerle.org
Дата: 15.01.10 23:42
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>Я слегка перепутал. Разницы никакой, все равно это неестественный порядок.


Это порядок вызова функции и описания списков. Для 90% задач он самый что ни на ест привычный. Просто ты не привык смотреть на него как на код.

I>В большинстве случаев в XML не нужно вчитываться.


Да ну? А зачем он тогда нужен?

VD>>Есть такое дело, но тем не менее при желании привычки можно изменить.


I>Это желание как то возникает у крайне малого кол.ва людей.


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

I>Не получится немного поменять, нужно те же 10 лет и это никакой не парадокс.


10 лет не так много.

I>1+2+3+4+5+6+7+8+9


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


(+ 1 2 3 4 5 6 7 8 9)

VD>>Проблема в том, что Вузы выпускают совершенно не подготовленных к реальному программированию людей которые быстро и легко прерващаются в серые массы быдлокодеров.


I>Ну с этим я и не спорю, я про лисп говорил.


Человек серьезно освоивший Лисп быдлокодить уже не будет.
Это лучший экзамен на соответствие профессии.

I>Наоборот, гораздо больше. Простое выражение записать и уже нужны скобки.

I>Все претензии к лиспу в основном из за префиксной записи и скобок.

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

I>>>С программами все точно так же, при этом кол.во конструкций на строку должно стремиться к минимуму.

VD>>Тебе и не снилось насколько Лисп минималистичен. Это еще один миф.

I>Минималистичность должна читаться на раз.


Чушь. Отличный пример — Брэйнфак.

I>Я понимаю, для чего они нужны. Но дело в том, что для обучения это пожнимает входной барьер помимо префиксной записи.


Поднимает? Ну, и здорово. Все быдло сразу будет отсеяно и пойдет заниматься своими прямыми обязанностями — мести пол.

I>Эта пятидесятилетняя история показывает, что люди не готовы в массе ломать привычки. Т.е. нужно принять как условие этот фактор. Лисперы это почемуто упорно игнорируют.


Я согласен, что люди не готовы ломать привычки. Но есть разные факторы. Вот скажем Nemerle в разы мощнее F#-а, так как имеет макросистему. Кроме того у Nemerle так самая привычная С-шная нотация. Но МС вложил смешные деньги в F# и многие уже бегают и подроливают "зачем нужен Nemerle если есть F#?...".

Теория с синтаксисом 100%-но не сработала на этом примере. По крайней мере для ряда товарищей.

>>Только языки последнего десятилетия (Темплэйт-Хаскель и Немерле) подошли к его возможностям (причем все равно есть аспекты по кторым Лисп и сейчас первый).


I>Это показывает, что мощность языка не сильно то и востребована.


Ага! Вот это и есть нонсенс! В то время когда рядом есть шагающие экскаваторы и белазы люди с упорством достойным лучшего применения роют котлованы лопатами.

Беда отрасли в том, что она сама отбрасывает хорошее и выбирает дерьмо. А уж почему это происходит — вопрос десятый.

VD>>Для обучения — в самый раз. Обучение — это в первую очередь развитие мозга. Уж лучше человек будет ломать голову над непривычным синтаксисом, чем учиться быдлокодить.


I>Это уже устаревший подход. Сейчс отказываются, во первых, от лиспа. Во вторых, функциональное программирование сдвигается с начальных курсов на старшие и даже предвыпускные семестры.


Сейчас? Акстись. Сейчас у нас учат программировать на Паскале начала 90-ых годов. А мир заваливается индусами (по сути, а не по крови).

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

I>Каково ?

Какой еще виртуальной машине?
Что до стенфорда, то через 10 лет посмотрим имеет ли в этом смысл.

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


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

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


Меня стенфорд и МИТ мало интресуют. Они и сотой доли программистов не выпускают. Проблемы в отрасли не в этих элитных вузах. Проблемы в общем уровне преподавания и учеников.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[16]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 16.01.10 00:48
Оценка:
Здравствуйте, VladD2, Вы писали:

I>>Я слегка перепутал. Разницы никакой, все равно это неестественный порядок.


VD>Это порядок вызова функции и описания списков. Для 90% задач он самый что ни на ест привычный. Просто ты не привык смотреть на него как на код.


С функциями гораздо проще

I>>В большинстве случаев в XML не нужно вчитываться.


VD>Да ну? А зачем он тогда нужен?


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

VD>Ну, вот программировать на С++ приходится многим. При этом уродства в языке выше крыши. Но многие даже хвалят их. Почему? Да потому, что это модный тренд и его всюду суют. А лисп по иронии судьбы всю жизнь считали языком ИИ. А зачем нам ИИ?


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

I>>Не получится немного поменять, нужно те же 10 лет и это никакой не парадокс.

VD>10 лет не так много.

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

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


VD>(+ 1 2 3 4 5 6 7 8 9)


Я там пропустил знаки, хотел + и — чередовать, но поспешил

VD>Человек серьезно освоивший Лисп быдлокодить уже не будет.


Быдлокодер это тот, кто вообще несерьезно относится к работе. Такие в лисп никогда не попадут. Потому это заслуга не лиспа. Барьер в Лисп берут именно серьезные люди.

VD>Это лучший экзамен на соответствие профессии.


А толку то ?

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

т.е. преподаватели и евангелисты. А это значит

Вот, например, хороший пример, когда банда Грэхема ушла из Яхи. Яхе пришлось переписать код Грэхема.
Что это значит ? Это значит, что Грэхем написал одноразовый код. Формально это не быдлокод, но поступить с ним иначе, как с быдлокодом, нельзя было.

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

I>>Все претензии к лиспу в основном из за префиксной записи и скобок.


VD>Это заблуждение. Люди не понимаю лисп по соврешенно другим причинам. В нем нужно по другому думать. Это куда сложнее чем просто синтаксис выучить.


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

I>>Минималистичность должна читаться на раз.

VD>Чушь. Отличный пример — Брэйнфак.

А помоему это птичий язык

VD>Поднимает? Ну, и здорово. Все быдло сразу будет отсеяно и пойдет заниматься своими прямыми обязанностями — мести пол.


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

VD>Я согласен, что люди не готовы ломать привычки. Но есть разные факторы. Вот скажем Nemerle в разы мощнее F#-а, так как имеет макросистему. Кроме того у Nemerle так самая привычная С-шная нотация. Но МС вложил смешные деньги в F# и многие уже бегают и подроливают "зачем нужен Nemerle если есть F#?...".


Микрософт никогда не вложится в Немерле, на мой взгляд, по крайней мере, пока будет жив C#, потому что такой язык создаст внутреннюю конкуренцию из за синтакиса.
А вот F# от этого недостатка избавлен.

VD>Теория с синтаксисом 100%-но не сработала на этом примере. По крайней мере для ряда товарищей.


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

>>>Только языки последнего десятилетия (Темплэйт-Хаскель и Немерле) подошли к его возможностям (причем все равно есть аспекты по кторым Лисп и сейчас первый).


VD>Ага! Вот это и есть нонсенс! В то время когда рядом есть шагающие экскаваторы и белазы люди с упорством достойным лучшего применения роют котлованы лопатами.


Где то востребована. Но если посмотреть, то окажется, что бОльшая часть программистов С++ даже шаблонов не знает, а в C# многие до фич даже 2.0 как то недобрались.

VD>Беда отрасли в том, что она сама отбрасывает хорошее и выбирает дерьмо. А уж почему это происходит — вопрос десятый.


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

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

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

А если все будет по коммунистически "ребята, вот отличный иснтурмент, называется Немерле, в нем можно писать как на C# но с макросами и функциональщиной"...
Вобщем здесь выбор не велик а макросами обмануть людей не получится.

I>>Это уже устаревший подход. Сейчс отказываются, во первых, от лиспа. Во вторых, функциональное программирование сдвигается с начальных курсов на старшие и даже предвыпускные семестры.


VD>Сейчас? Акстись. Сейчас у нас учат программировать на Паскале начала 90-ых годов. А мир заваливается индусами (по сути, а не по крови).


Именно что сейчас. Посмотри например на Мит и Стенфорд те же.

I>>Каково ?


VD>Какой еще виртуальной машине?


Имеется ввиду компьютер.

VD>А задача не в том, чтобы создать что-то на что-то похожее. А создать что-то удобное

на практике. На мой взгляд это почти удалось. Хотя развиваться еще есть куда.

Твой взгляд тут наименее ценный. Дай студентам второго-третьего курса немерле и питон. Пообещай каждому, кто хоть чтото напишет за два-три часа хучь на чем хучь чтото например 1000 баксов
Если не дай бог Немерле сольет питону, ждать бОльшей доли просто смысла не имеет.

Конечно, давать деньги идея дикая, но как то нужно замерить, какой из двух инструментов изберет контингент при наличии свободы выбора.
Re[16]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 16.01.10 00:55
Оценка:
Здравствуйте, Mr.Cat, Вы писали:

MC>Ты слишком много значения придаешь синтаксису, причем не в самой значительной части (префиксность/инфиксность — причем никто не мешает в лиспах пользоваться макрами для инфиксной записи).


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

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

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

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

MC>Вот у apl (ну или j) — да, девиантный синтаксис, а все эти лиспы с питонами — они больше парадигмами различаются, чем синтаксисом.


лисп от питона отличается как табуретка от бегемота.
Re[16]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 16.01.10 09:54
Оценка:
Здравствуйте, FR, Вы писали:

VD>>>А выражение на Хаскеле или ОКамле тоже читать невозможно?


I>>Возможно. Эти языки, кстати, не далеко от лиспа ушли.


FR>Эти языки гораздо ближе к рекламируемой тобой привычной математической нотации чем

FR>сиобразные или паскаль.

Ну и что ? У них другие проблемы.
Re[18]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 16.01.10 10:27
Оценка:
Здравствуйте, Mr.Cat, Вы писали:

MC>Синтаксис синтаксисом, но префиксность/инфиксность тут совершенно побоку.


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

В лиспе такого не может быть в принципе и как раз из за префиксной записи.


MC>Мне вдруг подумалось, что то, что тебе кажется господством префиксной записи — на самом деле — нечто иное, а именно — вот что:


А мне вдруг подумалось что бы говоришь про чтото свое, наболевшее.

MC>Таким образом, для работы над семантикой кода используются макросы — а стиль синтаксиса остается простым, как пробка.


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

>Можно спорить, что усложнение синтаксиса ведет повышению выразительности языка. Но усложнение синтаксиса — не есть lisp way. Lisp way — это повышение выразительности за счет повышения "семанитической емкости" простых синтаксических конструкций, если так можно выразиться.


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

MC>Для тех, кто продолжает спорить насчет повышения выразительности за счет усложнения синтаксиса — приведу несколько примеров.


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

Синтаксис питона становится привычным в первый же день. Вот и все.

Если ты знаешь/пишешь на лиспе и сам считаешь синтаксис непривычным, это значт, что синтаксис этот просто дерьмо и для восприятия человеком непригоден.

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

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

С питоном тем же все обстоит ровно наоборот.

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

Все что дальше уже неважно. А вот с опытными разработчиками дело обстоит совсем иначе, они уже ищут мощный инструмент и хорошо понимают, что им может деть синтаксис. Это не спасает, такой массы хватает лишь на поддержание лиспа на плаву.

I>>могу показать тебе на твоем же примере, но только за деньги

MC>О как тебя понесло-то.

Нормальная вещь — находим кролика, тестируем и оплачиваем эту работу. Большой бюджет не нужен, хватит например 100-150$ с проигравшего. Можно и без денег, но тебе придется хорошо поработать и не обманывать в тесте Поскольку ты заинтересованое лицо я полностью доверять не могу, если ты будешь тестируемым.
Re[17]: Перевод статьи Страуструпа
От: FR  
Дата: 16.01.10 10:46
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>Ну и что ? У них другие проблемы.


С читабельностью у них проблем нет, не хуже питона.
Re[18]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 16.01.10 10:49
Оценка:
Здравствуйте, FR, Вы писали:

I>>Ну и что ? У них другие проблемы.


FR>С читабельностью у них проблем нет, не хуже питона.


Я с этим сильно не согласен. Кроме того, у хаскеля кривая входа слишком крутая.
Re[19]: Перевод статьи Страуструпа
От: FR  
Дата: 16.01.10 11:09
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>Я с этим сильно не согласен. Кроме того, у хаскеля кривая входа слишком крутая.


Обоснуй первое предложение, хаскель согласен крутоват.
Re[20]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 16.01.10 11:43
Оценка:
Здравствуйте, FR, Вы писали:

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


I>>Я с этим сильно не согласен. Кроме того, у хаскеля кривая входа слишком крутая.


FR>Обоснуй первое предложение, хаскель согласен крутоват.


на уровене f n = n + 1 действительно всё просто.

а если будет чтото посложнее, типа

sum :: [Integer] -> Integer
sum = 0
sum (x:xs) = x + sum xs

то такая конструкция вобщем то ничего не скажет новичку
Re[23]: Перевод статьи Страуструпа
От: 24  
Дата: 16.01.10 12:41
Оценка:
24>условие никогда не выполнится
Прошу прощения, имел ввиду, что условие выполняется всегда, т.е. цикл не прекратится.
Re[24]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 16.01.10 14:48
Оценка:
Здравствуйте, FR, Вы писали:

I>>если буквально подсунуть новичку именно такой пример, то да, толку не будет.

FR>Конечно на сиобразных без компилятора легче ошибиться

I>>Но его объяснить будет гораздо легче, чем тот что на хаскеле.


FR>Я согласен что Хаскель не очень хорош для новичка, ML и его производные (SML, Caml light, OCaml) гораздо лучше.


Походи по рынку и поспрашивай наприер у людей, как они делают колбасу, солят сало и тд.

I>>У новичка нет в голове понятий список, массив, последовательность и тд и тд и тд.

I>>соответсвенно прочесть запись на хаскеле он в принципе не в состоянии.

FR>Код прозрачен и декларативен, очень похож на математическое определение, так что и читаться новичком будет проще.


Это только у тех новичков, у которых очень серьезный мат-бекграунд. ТОлько у них и ни у кого больше.

Большинство программистов на данный момент такого мат-бекграунда не имеют.

I>>в случае с сишной записью можно объяснить нектоорые кусочки и человек сходу поймет все необходимые понятия для чтения примера.


FR>Это говорит только твоя привычка. И как раз Хаскельный код объяснить будет проще.


Тогда объясни, почему доминирует Си,а не ml caml и тд.
Re[14]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 16.01.10 14:51
Оценка:
Здравствуйте, yumi, Вы писали:

I>>К тому моменту, когда люди начинают учить программирование, они уже имеют за спиной не менее 10 лет использования математики-арифметики, где все записывается вот так — sin(x) + cos(x)

I>>переход к польской записи создает на ровном месте довольно высокий барьер

Y>Сам замерял? Или кто на ушко шепнул?


Сам. Но объяснение нашел в букваре по теории впф и когнитивной психологии. Могу продемонстрировать на тебе же.


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


Y>Правда правда?


Именно так.

I>>Вот по прошествии тех же 10 лет он сможет читать такое так же легко как и 1+4*3 и никак не раньше. Но, вобщем то, родным способом это все равно не станет даже после 20 лет.


Y>Вот мне интересно, откуда же вы такие цифры точные берете?


Из букваря по теории ВПФ.

У тебя есть внятное объяснение, почему лисп никогда не доминировал ?
Re[18]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 16.01.10 15:51
Оценка:
Здравствуйте, yumi, Вы писали:

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


I>>лисп от питона отличается как табуретка от бегемота.


Y>Это говорит ровно о том, что ты ни Питона, ни Лиспа не знаешь.


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

(defun fact (n) 
  (if (<= n 1) 1 
      (* n (fact (- n 1)))))


def fact (n): 
    if n <= 1: return 1 
    else: return n * fact(n — 1)


Может у тебя скобки это пробельный символ, я не в курсе
Re[6]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 16.01.10 16:12
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

J>>>Что значит — задумался, он уже несколько лет профессор в универе

LVV>>Он и пишет, он и пишет, что 6 лет.
LVV>>А задумался он потому, что до него начинает доходить, насколько С++ как язык программирования сложен и ненадежен в реализации.

ГВ>Хм. По-моему, статья совсем не о C++.



Но Страуструп по любому на измене сидит
Re[14]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 16.01.10 16:17
Оценка:
Здравствуйте, Шахтер, Вы писали:

Ш>>>А какие нужны обоснования? То что мерседес лучше жигулей, неужели нужно обосновывать?

LVV>>А Паскаль или С вы считаете Мерседесом? Или наоборот — жигулями?
Ш>Я думаю, должно быть ясно, что С -- это мерседес по сравнению с Паскалем-жигулем.
Ключевое слово: вы ДУМАЕТЕ. Это только мнение.
Керниган тоже так думал, поэтому он написал статью: Почему паскаль не является моим любимым языком.
В ней он с "конструкцией в руках" обосновывает, почему его не устраивает паскаль.
Я же знаю массу достаточно серьезных людей, которые считают С/С++ полным отстоем, и предпочитают Модулу-Оберон-Компонентный паскаль.
Холивар тут заводить не будем. Я сам спорил когда-то с Губановым. И сейчас постоянно и неоднократно оберонщикам указываю на слабые места. Но это не умаляет недостатков С/С++.
С моей точки зрения С — это не мерседес, а велосипед. На нем можно проехать ВЕЗДЕ, в отличие от мерседеса...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[18]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 16.01.10 16:17
Оценка:
Здравствуйте, yumi, Вы писали:

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


I>>лисп от питона отличается как табуретка от бегемота.


Y>Это говорит ровно о том, что ты ни Питона, ни Лиспа не знаешь. Как раз таки оба этих языка очень похожи. Посмотри сравнение Питером Норвигом.


Кстати говоря,

Python is an excellent language for my intended use. It is easy to use (interactive with no compile-link-load-run cycle), which is important for my pedagogical purposes. While Python doesn't satisfy the prerequisite of being spelled J-A-V-A, Jython is close. Python seems to be easier to read than Lisp for someone with no experience in either language. The Python code I developed looks much more like the (independently developed) pseudo-code in the book than does the Lisp code. This is important, because some students were complaining that they had a hard time seeing how the pseudo-code in the book mapped into the online Lisp code (even though it seemed obvious to Lisp programmers).


Я выделил самые важные места. И несмотря на проблемы с перформансом, о чем автор говорит чуть ниже, Питон собрал бОльшую аудиторию нежели Лисп в лучшие года. Вот так то.

P.S. стоит читать ссылки, которые сюда сам же и постишь
Re[6]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 16.01.10 16:25
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

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


J>>>Что значит — задумался, он уже несколько лет профессор в универе

LVV>>Он и пишет, он и пишет, что 6 лет.
LVV>>А задумался он потому, что до него начинает доходить, насколько С++ как язык программирования сложен и ненадежен в реализации.

ГВ>Хм. По-моему, статья совсем не о C++.

Не о С++. Мне кажется естественным, что в явном виде С++ в статье нет, но дух его как-то за занавесом присутствует...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[7]: Перевод статьи Страуструпа
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 16.01.10 16:47
Оценка:
Здравствуйте, LaptevVV, Вы писали:

ГВ>>Хм. По-моему, статья совсем не о C++.

LVV>Не о С++. Мне кажется естественным, что в явном виде С++ в статье нет, но дух его как-то за занавесом присутствует...

Э... Давай не будем обсуждать отдельные аспекты просветления в отдельно взятом форуме. Если бы Страуструп говорил о C++, глядишь, мне бы статья и понравилась.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[7]: Перевод статьи Страуструпа
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 16.01.10 16:50
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>Но Страуструп по любому на измене сидит


Невнятная статья какая-то, на самом деле.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[2]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 16.01.10 17:23
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

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


LVV>>Поднимает вопрос, чему и как учить в программировании...

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

ГВ>Чепуху он говорит в конечном итоге. Потому что нельзя подменять сертификацию (лицензирование) продуктов для критических областей, например, для тех же электростанций, сертификацией специалистов-разработчиков. Образования должно быть вполне достаточно. С другой стороны, если владельцам электростанции начхать на то, какое именно программное обеспечение используется — то никакая сертификация не поможет.

Дык, во-первых, он видит перед собой американский вариант, поэтому и прикидывает его на обучение программированию. Во-вторых, он явно не сталкивался со специальными областями (либо еще, либо уже давно), а преподает исключительно программирование в общем.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[3]: Перевод статьи Страуструпа
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 16.01.10 20:52
Оценка:
Здравствуйте, LaptevVV, Вы писали:

ГВ>>Чепуху он говорит в конечном итоге. Потому что нельзя подменять сертификацию (лицензирование) продуктов для критических областей, например, для тех же электростанций, сертификацией специалистов-разработчиков. Образования должно быть вполне достаточно. С другой стороны, если владельцам электростанции начхать на то, какое именно программное обеспечение используется — то никакая сертификация не поможет.

LVV>Дык, во-первых, он видит перед собой американский вариант, поэтому и прикидывает его на обучение программированию. Во-вторых, он явно не сталкивался со специальными областями (либо еще, либо уже давно), а преподает исключительно программирование в общем.

Допустим. А в чём тогда рациональное зерно? Вариант с "избранными", ИМХО, тупиковый по определению.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[19]: Перевод статьи Страуструпа
От: Mr.Cat  
Дата: 16.01.10 21:46
Оценка:
Сорри, цитировать лень.
Понимаешь какая штука, с твоей стороны я услышал только два утверждения: насчет плохой читаемости лиспового синтаксиса и высокого порога вхождеия в лисп из-за этого. При том, что они субъективные и спорные, ты мне еще предлагаешь их мне поучаствовать в их опровержении. Так у нас хорошего спора не получится. Посему нет, я с тобой не спорю, просто дополняю твое малоинформативное мнение о лиспе ("синтаксис — говно") своим — несколько более развернутым ("на мой взгляд суть лиспа..."), менее эмоциональным и основывающимся на некотором опыте использования этого языка.
Re[20]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 16.01.10 22:59
Оценка:
Здравствуйте, Mr.Cat, Вы писали:

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


Так и запишем — тебе жалко 150 долларов

>Посему нет, я с тобой не спорю, просто дополняю твое малоинформативное мнение о лиспе ("синтаксис — говно") своим — несколько более развернутым ("на мой взгляд суть лиспа..."), менее эмоциональным и основывающимся на некотором опыте использования этого языка.


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

Это неудобство, которое остается даже у тех кто освоил лисп, срубает почти всех начинающих.
Re[19]: Перевод статьи Страуструпа
От: yumi  
Дата: 17.01.10 03:08
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>>>лисп от питона отличается как табуретка от бегемота.


I>P.S. стоит читать ссылки, которые сюда сам же и постишь


А ты не теряй нить, иначе заблудишься. Изначально ты говорил о том, что Лисп и Питон очень сильно отличаются, на что я привел ссылку сравнение, где подробно расписано о том, что Лисп и Питон очень похожие языки. Ты это, для начала бы выучил оба языка перед тем, как начать их обсуждать или сравнивать, иначе со стороны это выглядит как минимум смешно. Ты же их сравниваешь только на основе синтаксиса, подобно блондинке выбирающей машинку по цвету и внешнему виду. Соответственно, обсуждать с тобой данные языки, считаю бесполезным.
Lisp is not dead. It’s just the URL that has changed:
http://clojure.org
Re[19]: Перевод статьи Страуструпа
От: yumi  
Дата: 17.01.10 03:29
Оценка:
Здравствуйте, Ikemefula, Вы писали:

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


Слив засчитан, а я то надеялся, что ты опять попробуешь реабилитироваться, например, мол имел ввиду чередовать не + и -, а + и *. И кстати, как раз таки, префиксная запись менее подвержена ошибкам, т.к. тут нет приоритетов операций. Вот ответь мне на один вопрос, ты помнишь таблицу приоритетов операторов твоего любимого языка С/С++/Java/C#? Я честно, никогда не мог эту таблицу запомнить, и на практике были ошибки связанные с не знанием этих приоритетов. А вот префиксной нотации в Лиспе, такой проблемы нет.
Lisp is not dead. It’s just the URL that has changed:
http://clojure.org
Re[15]: Перевод статьи Страуструпа
От: Шахтер Интернет  
Дата: 17.01.10 07:00
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>Здравствуйте, Шахтер, Вы писали:


Ш>>>>А какие нужны обоснования? То что мерседес лучше жигулей, неужели нужно обосновывать?

LVV>>>А Паскаль или С вы считаете Мерседесом? Или наоборот — жигулями?
Ш>>Я думаю, должно быть ясно, что С -- это мерседес по сравнению с Паскалем-жигулем.
LVV>Ключевое слово: вы ДУМАЕТЕ. Это только мнение.

Не только. Паскаль слил конкуренцию с С вчистую. Это факт.

LVV>Керниган тоже так думал, поэтому он написал статью: Почему паскаль не является моим любимым языком.

LVV>В ней он с "конструкцией в руках" обосновывает, почему его не устраивает паскаль.
LVV>Я же знаю массу достаточно серьезных людей, которые считают С/С++ полным отстоем, и предпочитают Модулу-Оберон-Компонентный паскаль.

А я не знаю.

LVV>Холивар тут заводить не будем. Я сам спорил когда-то с Губановым. И сейчас постоянно и неоднократно оберонщикам указываю на слабые места. Но это не умаляет недостатков С/С++.

LVV>С моей точки зрения С — это не мерседес, а велосипед. На нем можно проехать ВЕЗДЕ, в отличие от мерседеса...

В сравнении с Паскалем -- мерседес.
В XXI век с CCore.
Копай Нео, копай -- летать научишься. © Matrix. Парадоксы
Re[16]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 17.01.10 07:21
Оценка:
Здравствуйте, Шахтер, Вы писали:

LVV>>Ключевое слово: вы ДУМАЕТЕ. Это только мнение.

Ш>Не только. Паскаль слил конкуренцию с С вчистую. Это факт.
Это не показатель. Осьпополам тоже слила конкуренцию винде. Но это не значит, что винда — крутяк, а осьпополам — отстой. Аналогично — линукс и винда. Да и мало ли систем, которые проиграли не в качестве, а в маркетинге. Маркетинг — не показатель качества.
LVV>>Я же знаю массу достаточно серьезных людей, которые считают С/С++ полным отстоем, и предпочитают Модулу-Оберон-Компонентный паскаль.
Ш>А я не знаю.
Ну так узнайте! Мир не замыкается на С/С++.
LVV>>С моей точки зрения С — это не мерседес, а велосипед. На нем можно проехать ВЕЗДЕ, в отличие от мерседеса...
Ш>В сравнении с Паскалем -- мерседес.
Нет. Паскаль — тоже велосипед.
Додиез и Ява — недалеко ушли. Так же как и Модула-Оберон-Компонентный паскаль.
Если уж сравнивать с автомобилем, то мне больше нравится неприхотливые авто, но которые ездят по любому бездорожью (коего в ИТ дофига!).
С автомобилем я б среду сопоставил, а язык — только движок. И вот тут Студия мне напоминает не то что мерседес, а РоллсРойс.
А вот БлэкБокс — это наш газик... Прост как автомат Калашникова... И столь же неприхотлив...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[4]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 17.01.10 07:50
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

LVV>>Дык, во-первых, он видит перед собой американский вариант, поэтому и прикидывает его на обучение программированию. Во-вторых, он явно не сталкивался со специальными областями (либо еще, либо уже давно), а преподает исключительно программирование в общем.

ГВ>Допустим. А в чём тогда рациональное зерно? Вариант с "избранными", ИМХО, тупиковый по определению.
Мне кажется, что он задумался о том же, о чем уже писал Вирт (я тут уже выдавал ссылку на его доклад "Потерянная дорога"). В любой профессии профессионал от любителя существенным образом отличается именно профессионализмом. В разы (об отдельных любителях, достигших невообразимых высот, говорить не будем). Вирт в своем докладе писал, что в ИТ сложилась такая ситуация, что чел с дипломом и чел без диплома очень мало отличаются. В ИТ ломятся толпы непрофессионалов, и бизнес вынужден их набирать, ибо истинных профессионалов просто не хватает, да и отличия в настоящее время — небольшие. Вирт говорил, что университеты должны такое положение поломать. Чтобы чел с университетским ИТ-образованием на порядок превосходил чела без оного.
И Страуструп в общем-то, глаголет то же самое. Но путей достижения этого он не знает, как сам и признается. Вирт, кстати, тоже не приывел радикальных рецептов. Только общее направление — развивать ИТ как науку.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[5]: Перевод статьи Страуструпа
От: igna Россия  
Дата: 17.01.10 09:27
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>... развивать ИТ как науку.


О! Это оно и есть. Где например у ООП научное обоснование? Почему например при очередном обсасывании вопроса о том, является ли квадрат прямоугольником, так редко приводят истинную причину отличия ответа на этот вопрос в ООП от ответа на него же в математике, а именно изменяемость квадрата и прямоугольника в ООП и неизменяемость их в математике? Вместо этого простого ответа обычно начинаются многостраничные туманные словоизлияния, которые в конце концов так и не дают ответа на вопрос.
Re[6]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 17.01.10 13:27
Оценка:
Здравствуйте, Ikemefula, Вы писали:

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


LVV>>Мне кажется, что он задумался о том же, о чем уже писал Вирт (я тут уже выдавал ссылку на его доклад "Потерянная дорога"). В любой профессии профессионал от любителя существенным образом отличается именно профессионализмом.


I>Профессионализм это уровень, масштаб мышления — чисто для конкретики, а то из твоей формулировки непойми что следует.

Ну, да... Вирт, естественно имел ввиду, что профессионал должен быть на порядок продуктивней любителя с точки зрения количества и качества разрабатываемого ПО. И пока мы этого не наблюдаем. Страуструп в общем-то говорит практически то же самое...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[17]: Перевод статьи Страуструпа
От: Шахтер Интернет  
Дата: 17.01.10 13:50
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>Здравствуйте, Шахтер, Вы писали:


LVV>>>Ключевое слово: вы ДУМАЕТЕ. Это только мнение.

Ш>>Не только. Паскаль слил конкуренцию с С вчистую. Это факт.
LVV>Это не показатель. Осьпополам тоже слила конкуренцию винде. Но это не значит, что винда — крутяк, а осьпополам — отстой.

Значит. OS2 -- отстой.

LVV>>>Аналогично — линукс и винда.


А разве линукс слил винде? Первый раз слышу.

LVV>>>Да и мало ли систем, которые проиграли не в качестве, а в маркетинге. Маркетинг — не показатель качества.


Никаким маркетингом не заставишь писать массы программистов на кривом языке.

LVV>>>Я же знаю массу достаточно серьезных людей, которые считают С/С++ полным отстоем, и предпочитают Модулу-Оберон-Компонентный паскаль.

Ш>>А я не знаю.
LVV>Ну так узнайте! Мир не замыкается на С/С++.

Спасибо, я не трачу время на изучение траша.
В XXI век с CCore.
Копай Нео, копай -- летать научишься. © Matrix. Парадоксы
Re[7]: Перевод статьи Страуструпа
От: Шахтер Интернет  
Дата: 17.01.10 13:54
Оценка:
Здравствуйте, LaptevVV, Вы писали:

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


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


LVV>>>Мне кажется, что он задумался о том же, о чем уже писал Вирт (я тут уже выдавал ссылку на его доклад "Потерянная дорога"). В любой профессии профессионал от любителя существенным образом отличается именно профессионализмом.


I>>Профессионализм это уровень, масштаб мышления — чисто для конкретики, а то из твоей формулировки непойми что следует.

LVV>Ну, да... Вирт, естественно имел ввиду, что профессионал должен быть на порядок продуктивней любителя с точки зрения количества и качества разрабатываемого ПО. И пока мы этого не наблюдаем.

Неправда. Ещё как наблюдаем. Просто вы (и Вирт) в профессионалы не тех записываете.

LVV>Страуструп в общем-то говорит практически то же самое...
В XXI век с CCore.
Копай Нео, копай -- летать научишься. © Matrix. Парадоксы
Re[18]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 17.01.10 14:18
Оценка:
Здравствуйте, Шахтер, Вы писали:

LVV>>Это не показатель. Осьпополам тоже слила конкуренцию винде. Но это не значит, что винда — крутяк, а осьпополам — отстой.

Ш>Значит. OS2 -- отстой.
А почитайте отзывы — даже в книжке Системное программирование Молчанов (с Гордеевым) написали, что ось пополам на два порядка надежнее сервера виндовского.
Но спорить не буду, ибо по этому отзыву вижу, что вы просто конъюнктурщик...
LVV>>>>Аналогично — линукс и винда.
Ш>А разве линукс слил винде? Первый раз слышу.
Слил конечно... _ Это уже мое мнение... Не совпадающее с вашим...
LVV>>>>Да и мало ли систем, которые проиграли не в качестве, а в маркетинге. Маркетинг — не показатель качества.
Ш>Никаким маркетингом не заставишь писать массы программистов на кривом языке.

Еще как заставишь... Вспомните фортран, PL-1 Кобол... Наконец, RPG...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[7]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 17.01.10 17:33
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>>>Мне кажется, что он задумался о том же, о чем уже писал Вирт (я тут уже выдавал ссылку на его доклад "Потерянная дорога"). В любой профессии профессионал от любителя существенным образом отличается именно профессионализмом.


I>>Профессионализм это уровень, масштаб мышления — чисто для конкретики, а то из твоей формулировки непойми что следует.

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

Нередко бывает даже так, что второ-третьекурсник жарит посильнее чем выпускник
Re[7]: Перевод статьи Страуструпа
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 17.01.10 17:34
Оценка:
Здравствуйте, LaptevVV, Вы писали:

I>>Профессионализм это уровень, масштаб мышления — чисто для конкретики, а то из твоей формулировки непойми что следует.

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

Вот теперь, пожалуйста, приведите количественные обоснования правомерности таких призывов. В каких метриках нужно измерять количество и качество разрабатываемого ПО?
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[8]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 17.01.10 17:46
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>>>Профессионализм это уровень, масштаб мышления — чисто для конкретики, а то из твоей формулировки непойми что следует.

LVV>>Ну, да... Вирт, естественно имел ввиду, что профессионал должен быть на порядок продуктивней любителя с точки зрения количества и качества разрабатываемого ПО. И пока мы этого не наблюдаем. Страуструп в общем-то говорит практически то же самое...
I>Нередко бывает даже так, что второ-третьекурсник жарит посильнее чем выпускник

Ну, это понятно... Бывает, что я вокруг себя наблюдаю...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[21]: Перевод статьи Страуструпа
От: Mr.Cat  
Дата: 17.01.10 17:55
Оценка:
Здравствуйте, Ikemefula, Вы писали:
I>Я уже говорил, что у тебя скобки теже — пробельные символы
На эту тему есть картинка такая:
Re[8]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 17.01.10 17:59
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

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


I>>>Профессионализм это уровень, масштаб мышления — чисто для конкретики, а то из твоей формулировки непойми что следует.

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

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

В каких метриках нужно измерять количество и качество разрабатываемого ПО?

Вот цитата непосредственно из доклада Вирта:

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

Я тут с ним совершенно согласен. Пока мы существенного различия между профессионалами и вдохновенными любителями не видим.
Насчет количественных мер — это как минимум докторская диссертация... Но с точки зрения здравого смысла, профессионал должен писать быстрее и совершать значительно меньше ошибок. Он должен быть этому обучен.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[22]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 17.01.10 18:00
Оценка:
Здравствуйте, Mr.Cat, Вы писали:

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

I>>Я уже говорил, что у тебя скобки теже — пробельные символы
MC>На эту тему есть картинка такая:
MC>

Да, примерно так.
Re[8]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 17.01.10 18:01
Оценка:
Здравствуйте, Шахтер, Вы писали:

I>>>Профессионализм это уровень, масштаб мышления — чисто для конкретики, а то из твоей формулировки непойми что следует.

LVV>>Ну, да... Вирт, естественно имел ввиду, что профессионал должен быть на порядок продуктивней любителя с точки зрения количества и качества разрабатываемого ПО. И пока мы этого не наблюдаем.
Ш>Неправда. Ещё как наблюдаем. Просто вы (и Вирт) в профессионалы не тех записываете.
Очевидно, вы прекрасно представляете, кого я (и Вирт) записываю в профессионалы. А вот я не совсем понимаю, кого записываете в профессионалы вы?
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[9]: Перевод статьи Страуструпа
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 17.01.10 18:34
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>Я тут с ним совершенно согласен. Пока мы существенного различия между профессионалами и вдохновенными любителями не видим.


Вот чего я не понимаю, так это почему, что Струструп, что Вирт упускают из виду контекст, то есть задачи, которые решают программисты. Да, на простеньком UI+DB профи сильно отстанет от хорошо дрессированного любителя, это к гадалке не ходи. Но в то же время, профи (по идее) сможет решить те задачи, на которые любитель даже не позарится.

LVV>Насчет количественных мер — это как минимум докторская диссертация...


О! Вот тебе вопрос номер 1: где такие диссертации? Иначе мы переводим обсуждение "эффективности" в разряд словоблудия. То есть, я хотел сказать — вкусовых оценок. То есть тут одно из двух: либо нужно снимать вопрос об "эффективности" с повестки дня, либо ясно формулировать критерии этой самой эффективности.

LVV>Но с точки зрения здравого смысла, профессионал должен писать быстрее и совершать значительно меньше ошибок. Он должен быть этому обучен.


С точки зрения способности быстро печатать люди приблизительно одинаковы — 150-250 символов/минуту. Вопрос, как ты понимаешь, упирается в то, что именно печатается. А отсюда мы получаем ещё один не менее интересный вопрос: какова объективная свобода манёвра при выборе решений у "профи", и у вдохновенного любителя? Чем она обусловлена? Напоминаю, что эта самая свобода ограничивается извне общими показателями: общей стоимостью, общим временем, и т.п.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[19]: Перевод статьи Страуструпа
От: Privalov  
Дата: 17.01.10 19:02
Оценка:
Здравствуйте, LaptevVV, Вы писали:

Ш>>Значит. OS2 -- отстой.

LVV>А почитайте отзывы — даже в книжке Системное программирование Молчанов (с Гордеевым) написали, что ось пополам на два порядка надежнее сервера виндовского.

Кое-где полуось до сих пор еще встречается.

LVV>Еще как заставишь... Вспомните фортран, PL-1 Кобол... Наконец, RPG...


Дак там весь маркетинг состоял в том, что IBM означенные языки в составе своих ОС поставляла (Фортранов, ЕМНИП, даже два). И потом, Фортран не так уж и плох.
Re[20]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 17.01.10 20:16
Оценка:
Здравствуйте, Privalov, Вы писали:

LVV>>Еще как заставишь... Вспомните фортран, PL-1 Кобол... Наконец, RPG...

P>Дак там весь маркетинг состоял в том, что IBM означенные языки в составе своих ОС поставляла (Фортранов, ЕМНИП, даже два). И потом, Фортран не так уж и плох.
Ну так фактически выбор языка определяется не его сильными или слабыми сторонами, а опять же маркетинговой политикой фирм, поставляющих компиляторы. Сам язык может быть хоть блестящим, хоть уродским. Программисты просто пишут — на чем есть.
Тот же Паскаль фактически знали только в университетах, пока не появилась Борланд с Турбопаскалем.
Неплох — это Фортран-90, ну Фортран-77. А до того, вы меня извините... Операторы IF, например — это фактически трехадресная команда перехода...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[10]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 17.01.10 20:26
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

LVV>>Я тут с ним совершенно согласен. Пока мы существенного различия между профессионалами и вдохновенными любителями не видим.

ГВ>Вот чего я не понимаю, так это почему, что Струструп, что Вирт упускают из виду контекст, то есть задачи, которые решают программисты. Да, на простеньком UI+DB профи сильно отстанет от хорошо дрессированного любителя, это к гадалке не ходи. Но в то же время, профи (по идее) сможет решить те задачи, на которые любитель даже не позарится.
Ценное замечание!
Но, насколько я понимаю, ты тут имеешь ввиду индивидуальную работу. А в коллективной — уровень профессионализма в этом понимании существенно нивелируется. Чел просто участвует в работе, решение о начинании — не от него зависело. И вот тут — то как раз и должно проявляться различие между профессионалом и вдохновенным любителев в скорости и качестве работы. Но пока не проявляется особо.
LVV>>Насчет количественных мер — это как минимум докторская диссертация...
ГВ>О! Вот тебе вопрос номер 1: где такие диссертации? Иначе мы переводим обсуждение "эффективности" в разряд словоблудия. То есть, я хотел сказать — вкусовых оценок. То есть тут одно из двух: либо нужно снимать вопрос об "эффективности" с повестки дня, либо ясно формулировать критерии этой самой эффективности.
Далеко ходить не будем — мой аспирант защитил в этом годе как раз диссер на тему количественной оценки качества ПО. Естественно, об измерении всего и со всех сторон речь пока не идет, но видать подходы, куда развивать и как мерить квалификацию — на основе количественного измерения качества.
Я как раз занимаюсь вопросами оценивания действий студента при реализации некоего задания по программированию. Естественно, в рамках обучающей среды, но которая весьма похожа на промышленную. Разница как раз в этом довеске, который отслеживает студента и оценивает.
LVV>>Но с точки зрения здравого смысла, профессионал должен писать быстрее и совершать значительно меньше ошибок. Он должен быть этому обучен.
ГВ>С точки зрения способности быстро печатать люди приблизительно одинаковы — 150-250 символов/минуту. Вопрос, как ты понимаешь, упирается в то, что именно печатается. А отсюда мы получаем ещё один не менее интересный вопрос: какова объективная свобода манёвра при выборе решений у "профи", и у вдохновенного любителя? Чем она обусловлена? Напоминаю, что эта самая свобода ограничивается извне общими показателями: общей стоимостью, общим временем, и т.п.
Мне представляется, что профи должен значительно больше знать фактического материала вроде структур данных, приемов программирования, тех самых паттернов, наконец.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[9]: Перевод статьи Страуструпа
От: FR  
Дата: 18.01.10 04:34
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>Вот цитата непосредственно из доклада Вирта:

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

LVV>Я тут с ним совершенно согласен. Пока мы существенного различия между профессионалами и вдохновенными любителями не видим.

И не увидим, они упускают одну вещь, все-таки производительность и эффективность программиста очень существенно зависит от таланта, в этом отношении программирование гораздо ближе к искусству и высококвалифицированному ремеслу чем к инженерной деятельности. Индивидуальные различия просто огромные, это исследовано во множестве источников, например хорошо описано тут http://russian.joelonsoftware.com/Articles/HighNotes.html

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


Угу так и должно быть при равных способностях, но если способности любителя на порядок превышают способности профессионала то ничего ни поможет.
Re[10]: Перевод статьи Страуструпа
От: FR  
Дата: 18.01.10 04:37
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>Вот чего я не понимаю, так это почему, что Струструп, что Вирт упускают из виду контекст, то есть задачи, которые решают программисты. Да, на простеньком UI+DB профи сильно отстанет от хорошо дрессированного любителя, это к гадалке не ходи. Но в то же время, профи (по идее) сможет решить те задачи, на которые любитель даже не позарится.


Хорошо дрессированный любитель == профессионал разве нет?
Вообще надо определится с терминами.
Re[21]: Перевод статьи Страуструпа
От: Privalov  
Дата: 18.01.10 06:06
Оценка:
Здравствуйте, LaptevVV, Вы писали:

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


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

LVV>Тот же Паскаль фактически знали только в университетах, пока не появилась Борланд с Турбопаскалем.


Кто-то однажды сказал, что Турбопаскаль — это С с синтаксисом Паскаля. Классический Паскаль я видел в вузе, курсе на третьем. Не понравилось. Заслуга Паскаля, imho, в том, что он увел разработчиков языков от монстров типа PL/1.

LVV>Неплох — это Фортран-90, ну Фортран-77. А до того, вы меня извините... Операторы IF, например — это фактически трехадресная команда перехода...


Это арифметический IF. Зато можно было GOTO не писать. А еще там были вычисляемый и назначаемый GOTO, которых я в своем коде ни разу не использовал.

Тот же Графор не переписывался с Фортрана-4 на что-то более новое. Я краем глаза исходники в конце 90-х видел.
Re[5]: Перевод статьи Страуструпа
От: Driver  
Дата: 18.01.10 06:10
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>Проблему "в целом" пока никто еще не решил. А хороший вопрос как правило важнее, чем ответ на него.

I>Вообще научные статьи они больше ценны не ответами, а вопросами.

вы забыли написать "имхо"
Re[10]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 18.01.10 06:21
Оценка:
Здравствуйте, FR, Вы писали:

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


LVV>>Вот цитата непосредственно из доклада Вирта:

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

LVV>>Я тут с ним совершенно согласен. Пока мы существенного различия между профессионалами и вдохновенными любителями не видим.

FR>И не увидим, они упускают одну вещь, все-таки производительность и эффективность программиста очень существенно зависит от таланта, в этом отношении программирование гораздо ближе к искусству и высококвалифицированному ремеслу чем к инженерной деятельности. Индивидуальные различия просто огромные, это исследовано во множестве источников, например хорошо описано тут http://russian.joelonsoftware.com/Articles/HighNotes.html

Иссследовано — это да. И тут возникает мысль (вслед за Страуструпом), что нужно установить некий порог, через который в профессию допускались бы только из верхней половины всего спектра. А нижняя как раз отсеивалась бы. Ну как типа — нет способностей. Если уж признавать эту специальность творческой. Тогда оставшиеся — это гарантированное качество профессионалов. А из отсеянных кто сильно упертый — все равно пробьется. Чтобы опять же стать профи, а не вдохновенным любителем.
С другой стороны, один из оберонщиков, Илья Ермаков, считает, что программирование — это инженерная дисциплина. И научить писать качественные проги можно многих. И он успешно это делает. Только и инструмент должен быть качественным (с точки зрения накосячить — должно быть как можно меньше возможностей это сделать). Его Метасистемы используют БлэкБокс и горя не знают.

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

FR>Угу так и должно быть при равных способностях, но если способности любителя на порядок превышают способности профессионала то ничего ни поможет.
Дык см. выше — не должны в профи попадать неспособные.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[11]: Перевод статьи Страуструпа
От: FR  
Дата: 18.01.10 06:35
Оценка:
Здравствуйте, LaptevVV, Вы писали:


LVV>Иссследовано — это да. И тут возникает мысль (вслед за Страуструпом), что нужно установить некий порог, через который в профессию допускались бы только из верхней половины всего спектра. А нижняя как раз отсеивалась бы. Ну как типа — нет способностей. Если уж признавать эту специальность творческой. Тогда оставшиеся — это гарантированное качество профессионалов. А из отсеянных кто сильно упертый — все равно пробьется. Чтобы опять же стать профи, а не вдохновенным любителем.


Тут тоже все очень непросто, вот из статьи Джоеля:

Так что я уменьшил выборку и взял данные только по тем студентам, которые были среди лучших: по 25% студентов, показавших лучшее качество кода.
.....
Невелика разница! Стандартное отклонение практически такое же для четверти лучших студентов. Более того, если вы внимательно посмотрите на эти данные, то станет ясно, что видимой зависимости между временем и оценкой нет.
.....
Нечего здесь искать, в этом-то и вся суть. Качество работы и время, на нее затраченное, — эти параметры попросту не кореллируют.


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

LVV>С другой стороны, один из оберонщиков, Илья Ермаков, считает, что программирование — это инженерная дисциплина. И научить писать качественные проги можно многих. И он успешно это делает. Только и инструмент должен быть качественным (с точки зрения накосячить — должно быть как можно меньше возможностей это сделать). Его Метасистемы используют БлэкБокс и горя не знают.


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

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

FR>>Угу так и должно быть при равных способностях, но если способности любителя на порядок превышают способности профессионала то ничего ни поможет.
LVV>Дык см. выше — не должны в профи попадать неспособные.

Не помогает.
Re[12]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 18.01.10 06:42
Оценка:
Здравствуйте, FR, Вы писали:

FR>Тут тоже все очень непросто, вот из статьи Джоеля:

FR>

FR>Так что я уменьшил выборку и взял данные только по тем студентам, которые были среди лучших: по 25% студентов, показавших лучшее качество кода.
FR>.....
FR>Невелика разница! Стандартное отклонение практически такое же для четверти лучших студентов. Более того, если вы внимательно посмотрите на эти данные, то станет ясно, что видимой зависимости между временем и оценкой нет.
FR>.....
FR>Нечего здесь искать, в этом-то и вся суть. Качество работы и время, на нее затраченное, — эти параметры попросту не кореллируют.

FR>То есть даже у тех у кого есть талант разброс в производительности в порядок — нормально.
Знаю я эту статью — читал книжки Джоэла.
Только обратите внимание: во втором случае — это дисперсия среди лучших, а не среди всех. Нижнюю-то половину мы уже отсекли.
Но думаю, тут еще сильно зависит от типов задач. Одни решают лучше нестандартные задачи, другие — наоборот, чем стандартнее, тем быстрее и качественнее.
LVV>>Дык см. выше — не должны в профи попадать неспособные.
FR>Не помогает.
см. выше.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[13]: Перевод статьи Страуструпа
От: FR  
Дата: 18.01.10 07:00
Оценка:
Здравствуйте, LaptevVV, Вы писали:


LVV>Знаю я эту статью — читал книжки Джоэла.

LVV>Только обратите внимание: во втором случае — это дисперсия среди лучших, а не среди всех. Нижнюю-то половину мы уже отсекли.

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

LVV>Но думаю, тут еще сильно зависит от типов задач. Одни решают лучше нестандартные задачи, другие — наоборот, чем стандартнее, тем быстрее и качественнее.


Это вносит еще одно препятствие к достижению цели Вирта
Re[14]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 18.01.10 07:23
Оценка:
Здравствуйте, FR, Вы писали:

LVV>>Знаю я эту статью — читал книжки Джоэла.

LVV>>Только обратите внимание: во втором случае — это дисперсия среди лучших, а не среди всех. Нижнюю-то половину мы уже отсекли.
FR>Она мало отличается от дисперсии среди всех, из чего следует что Виртовская цель практически недостижима.
LVV>>Но думаю, тут еще сильно зависит от типов задач.
Одни решают лучше нестандартные задачи, другие — наоборот, чем стандартнее, тем быстрее и качественнее.
FR>Это вносит еще одно препятствие к достижению цели Вирта
Вот нарвался опять на статью Джоэла:

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

http://russian.joelonsoftware.com/Articles/BacktoBasics.html

Мне кажется, это самое то. Профи об этих вещах должен знать в результате обучения, а любитель — может и не знать.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[8]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 18.01.10 11:14
Оценка:
Здравствуйте, Шахтер, Вы писали:

I>>>Профессионализм это уровень, масштаб мышления — чисто для конкретики, а то из твоей формулировки непойми что следует.

LVV>>Ну, да... Вирт, естественно имел ввиду, что профессионал должен быть на порядок продуктивней любителя с точки зрения количества и качества разрабатываемого ПО. И пока мы этого не наблюдаем.

Ш>Неправда. Ещё как наблюдаем. Просто вы (и Вирт) в профессионалы не тех записываете.


А что значит профессионал по твоему ?
Re[11]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 18.01.10 11:17
Оценка:
Здравствуйте, LaptevVV, Вы писали:

ГВ>>С точки зрения способности быстро печатать люди приблизительно одинаковы — 150-250 символов/минуту. Вопрос, как ты понимаешь, упирается в то, что именно печатается. А отсюда мы получаем ещё один не менее интересный вопрос: какова объективная свобода манёвра при выборе решений у "профи", и у вдохновенного любителя? Чем она обусловлена? Напоминаю, что эта самая свобода ограничивается извне общими показателями: общей стоимостью, общим временем, и т.п.

LVV>Мне представляется, что профи должен значительно больше знать фактического материала вроде структур данных, приемов программирования, тех самых паттернов, наконец.

Не только знать, но и лучше применить, уметь сделать хороший разбор решение, с достоинствами, недостатками, при чем тогда когда решения еще нет.
Re[10]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 18.01.10 11:36
Оценка:
Здравствуйте, FR, Вы писали:

FR>И не увидим, они упускают одну вещь, все-таки производительность и эффективность программиста очень существенно зависит от таланта, в этом отношении программирование гораздо ближе к искусству и высококвалифицированному ремеслу чем к инженерной деятельности. Индивидуальные различия просто огромные, это исследовано во множестве источников, например хорошо описано тут http://russian.joelonsoftware.com/Articles/HighNotes.html


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

Посему это просто ересь в чистом виде.

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


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


Я вот не пойму, кого ты назваешь любителем а кого профессионалом.

Вообще это разделние мне кажется сильно условно и лучше его вообще опустить и использовать более другие названия — студенты, выпускники и тд.
Re[11]: Перевод статьи Страуструпа
От: igna Россия  
Дата: 18.01.10 13:18
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>Это везде так, даже у дворников. Время слабо коррелирует с качеством уборки территори, а многие дворники в принципе не способны заниматься уборкой мусора. Так что и про дворников можно сказать, что де это ближе к искусству высококвалифицированому ремеслу.


Так скажи, будешь совершенно прав, какое это высококвалифицированое ремесло. Спроектировать мост, даже плохой, но чтоб не упал, или расчитать устойчивость системы с обратной связью, или спроектировать самолет, который полетит, человек, который этому не научился, не сможет. А подметать двор сможет каждый, даже если и плохо. Писать программы может не каждый, но соответствующее образование не является для того необходимой предпосылкой. Так что да, программист как профессия по уровню квалификации находится между дворникои и инженером.
Re[12]: Перевод статьи Страуструпа
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 18.01.10 13:46
Оценка:
Здравствуйте, Ikemefula, Вы писали:

LVV>>Мне представляется, что профи должен значительно больше знать фактического материала вроде структур данных, приемов программирования, тех самых паттернов, наконец.


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


Что такое "хороший разбор"? С какой точки зрения? С разных точек зрения одно и то же решение может выглядеть полным отстоем и рулезом форева.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[12]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 18.01.10 13:47
Оценка:
Здравствуйте, igna, Вы писали:

I>>Это везде так, даже у дворников. Время слабо коррелирует с качеством уборки территори, а многие дворники в принципе не способны заниматься уборкой мусора. Так что и про дворников можно сказать, что де это ближе к искусству высококвалифицированому ремеслу.


I>Так скажи, будешь совершенно прав, какое это высококвалифицированое ремесло.


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

>А подметать двор сможет каждый, даже если и плохо.


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

А если ты будешь делать это медленно, то наверняка не успеешь подмести/убрать где то еще.

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

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


наоборот, нужно образование. Сейчас берут необученых, потому что обученых мало а то и вовсе нет. Потому и склаывается ложно впечатление, что де квалифицированые не надо.

Просто не надо бояться того, что предлагают Страуструп и Вирт, еще со времен мануфактур известно, что разделение труда повышает производительность труда просто в ужасающх масштабах, это тебе не Лиспом баловаться.
Re[12]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 18.01.10 14:54
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>Главное, на что я хочу обратить внимание, так это на то, что нельзя пытаться обобщать требования всей ИТ-индустрии.


В том то и дело, что обобщать нельзя. А нынче раз это и делается, потому и надо вводить специализации.

ГВ>Но мнение участников этого рынка не может быть определяющим в развитии самой CS и подготовке специалистов CS. Точно так же, как мнение слесаря ничего не определяет в обучении сопромату, хотя слесарь и является одним из потребителей продуктов, появившихся благодаря развитому обучению сопромату. Ортогональные это вещи — CS и "совокупная ИТ-индустрия", как ни крути. ИТ-индустрия всегда будет галдеть, что ей умники не нужны, хотя она за обе щёки будет уписывать плоды трудов этих самых умников.


Это значит надо разделить уже на этапе подготовки и отказаться от идеи клепать исключительно умников.

LVV>>Мне представляется, что профи должен значительно больше знать фактического материала вроде структур данных, приемов программирования, тех самых паттернов, наконец.


ГВ>А смысл? Если профи решает те же задачи, что и вчерашний таксист?


Если еще и качество решение такое же как и у таксиста, и время потраченое такое же, то конечно смысла нет и таксист есть наилучший выбор
Re[13]: Перевод статьи Страуструпа
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 18.01.10 15:27
Оценка:
Здравствуйте, Ikemefula, Вы писали:

ГВ>>Главное, на что я хочу обратить внимание, так это на то, что нельзя пытаться обобщать требования всей ИТ-индустрии.


I>В том то и дело, что обобщать нельзя. А нынче раз это и делается, потому и надо вводить специализации.


В принципе, в этом есть рациональное зерно. Только специализации, по идее, должны определяться предметными областями, находящимися за пределами ИТ. Ну там, "экономика", "логистика", "машиностроение"... А не "базы данных", "веб-программирование", "разработка ОС" и т.п.

ГВ>>Но мнение участников этого рынка не может быть определяющим в развитии самой CS и подготовке специалистов CS. Точно так же, как мнение слесаря ничего не определяет в обучении сопромату, хотя слесарь и является одним из потребителей продуктов, появившихся благодаря развитому обучению сопромату. Ортогональные это вещи — CS и "совокупная ИТ-индустрия", как ни крути. ИТ-индустрия всегда будет галдеть, что ей умники не нужны, хотя она за обе щёки будет уписывать плоды трудов этих самых умников.


I>Это значит надо разделить уже на этапе подготовки и отказаться от идеи клепать исключительно умников.


Я бы предположил, что имеет смысл возложить такую подготовку "не шибко умников" на учебные заведения типа ПТУ. Кромсать вышку ради такой сомнительной цели — самоубийство для ИТ-индустрии. Если менеджеры ИТ-индустрии этого не понимают, то это их персональные сложности. А если этого не понимают сами CS-ники, то это уже большая проблема.

LVV>>>Мне представляется, что профи должен значительно больше знать фактического материала вроде структур данных, приемов программирования, тех самых паттернов, наконец.


ГВ>>А смысл? Если профи решает те же задачи, что и вчерашний таксист?


I>Если еще и качество решение такое же как и у таксиста, и время потраченое такое же, то конечно смысла нет и таксист есть наилучший выбор


Ты не понял. Я имел в виду, что набор внешних ограничений может быть таким, что "профи" попросту негде будет проявлять себя.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[14]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 18.01.10 16:40
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>В принципе, в этом есть рациональное зерно. Только специализации, по идее, должны определяться предметными областями, находящимися за пределами ИТ. Ну там, "экономика", "логистика", "машиностроение"... А не "базы данных", "веб-программирование", "разработка ОС" и т.п.


Здесь проблема в кол.ве знаний-умений которые можно вложить в студента за 5 лет. Получается, что человек, например специалист по физике, сможет писать код завязаный на физику, но не сможет решать глобальные задачи по архитектуре приложения, потому как его подготовка как программиста будет усеченной.
для решения чисто программных задач нужны специальности вроде ПОВТАС(Программное обеспечение) в России. При этом здесь тоже достигнут предел — студентны на выходе крайне слабы, даже круглые отличники.
Потому уже сейчас неявно вводится специализация — студент как правило выбирает направление сам, т.е. берет или С++, или дотнет или джаву, более того, будущая специализация определяется его первыми проектами.
Все что нужно — неявное сделать явным.

ГВ>Я бы предположил, что имеет смысл возложить такую подготовку "не шибко умников" на учебные заведения типа ПТУ.


На ПТУ переложить нельзя, потому что разработка ПО остается инженерной областью.
На ПТУ перекладываются профессии, где работать приходится в основном руками.
По аналогии с мед. учреждениями, на операции главному хирургу помогают другие хирурги, попроще, но при этом у них такое же мед. образование.
Re[15]: Перевод статьи Страуструпа
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 18.01.10 18:24
Оценка:
Здравствуйте, Ikemefula, Вы писали:

ГВ>>В принципе, в этом есть рациональное зерно. Только специализации, по идее, должны определяться предметными областями, находящимися за пределами ИТ. Ну там, "экономика", "логистика", "машиностроение"... А не "базы данных", "веб-программирование", "разработка ОС" и т.п.


I>Здесь проблема в кол.ве знаний-умений которые можно вложить в студента за 5 лет. Получается, что человек, например специалист по физике, сможет писать код завязаный на физику, но не сможет решать глобальные задачи по архитектуре приложения, потому как его подготовка как программиста будет усеченной.


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

I>для решения чисто программных задач нужны специальности вроде ПОВТАС(Программное обеспечение) в России. При этом здесь тоже достигнут предел — студентны на выходе крайне слабы, даже круглые отличники.


Не понял, что значит — "достигнут предел"?

I>Потому уже сейчас неявно вводится специализация — студент как правило выбирает направление сам, т.е. берет или С++, или дотнет или джаву, более того, будущая специализация определяется его первыми проектами.

I>Все что нужно — неявное сделать явным.

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

ГВ>>Я бы предположил, что имеет смысл возложить такую подготовку "не шибко умников" на учебные заведения типа ПТУ.

I>На ПТУ переложить нельзя, потому что разработка ПО остается инженерной областью.

Тогда нужно снимать тезисы о трансформации высшего образования. Либо я не понимаю, о каких таких "умниках" идёт речь.

I>На ПТУ перекладываются профессии, где работать приходится в основном руками.


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

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


Согласен. Только хирурги не "попроще", а менее опытные, да и ответственности у врачей побольше, чем у программистов.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[16]: Перевод статьи Страуструпа
От: VladD2 Российская Империя www.nemerle.org
Дата: 18.01.10 19:05
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>По идее, прикладную специализацию имеет смысл вводить на старших курсах, да и то, придавая ей сугубо практический характер с акцентами на имеющиеся библиотеки, системы и т.п. "Общепрограммистская" подготовка от этого страдать не должна, ИМХО.


А я считаю, что эта специализация вообще чушь полная. Практика нужна, а не специализация. Специалистов у нас и так готовят в профильных вузах. Скажем в нефтяных готовят программистов для нефтянки (точно знаю). Вот только качество самого преподавания программирования у них ниже плинтуса. Там не просто Паскаль, а еще и бабка которая сама в нем мало что понимает. Я прочел их задачки и сам в них ни черта не понял. Бред да и только.

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

Даже в ПТУ учат на практике. Там теоретические занятия перемежаются с практическими. Без этого нельзя подготовить рабочего который должен работать на станке или даже сварщика.
А у программистов почему-то считается, что можно научить программировать без реальной практики. Это нонсенс!

Так что чтобы было больше хороших специалистов, нужно сделать две вещи:
1. Ввести обязательную практику хотя бы на двух последних курсах (а по уму с первого, наращивая ее объем к концу обучения).
2. Ввести аналог ординатуры в медицине когда человека за копейки сбагривают работать в реальные конторы (возможно госучреждения где требуется автоматизация, а может и с коммерческими как-то связь наладить).
3. Таки похоронить С++, как источник неоправданных сложностей в обучении и использовании.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[16]: Перевод статьи Страуструпа
От: VladD2 Российская Империя www.nemerle.org
Дата: 18.01.10 19:09
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

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


ГВ>Согласен. Только хирурги не "попроще", а менее опытные, да и ответственности у врачей побольше, чем у программистов.


Кстати — это чуешь. Хирурги хирургам не помогают. Им помогают ординаторы (крючки держат), которые за одно и обучаются.

Хирургам очень трудно, кстати, найти реальную работу, так как получить практику очень не просто.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[12]: Перевод статьи Страуструпа
От: LaptevVV Россия  
Дата: 18.01.10 19:25
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>Мы о разных вещах говорим. Я — о задачах, ты, вторя за Виртом и Страуструпом — о персоналиях специалистов. Для разных задач нужен разный набор знаний... Заранее оговорюсь, что я сам люблю поспекулировать, мол, знаний много не бывает, но не всегда они нужны в прямом смысле слова. Иначе бы не было таких анекдотов, как специалист с 10-летним опытом использования C++, который с трудом представляет себе, что такое виртуальное наследование. Коллективная разработка или индивидуальная — это тоже не суть важно, просто в коллективе некоторое дообучение пройдёт проще, чем индивидуальным порядком (что, в прочем, не факт).

Не... Вирт говорил как раз не о персоналиях, а как раз о том, что ты ниже написал. Вирт в докладе "Потерянная дорогв" (можно посмотреть текст на сайте Информатика-21) говорит о том, что образование пошло не по той дороге. По дороге, наявязанной промышленностью. То есть стало готовить по твоей терминологии — конфигураторов, а не тулзописателей. И Вирт призывал как раз послать промышленность нафиг и начать учить тулзописателей.
ГВ>[]
ГВ>Однако, некоторые особо активные деятели начнут ныть о том, что "индустрии [не] нужны" и "поменять образование", приводя в качестве иллюстрации высказывания конфигураторов (нет, ребята из ИТ-индустрии совсем не плохие люди, достойные всяческого уважения, но в контексте задач подготовки тулзописателей — никто). Понимаешь подвох? Благодаря развитию CS создан огромный рынок вторичной работы, который всегда (то есть вообще всегда) будет жирнее и толще, чем рынок, скажем так, ключевых продуктов, которые сами "насыщены CS". Но мнение участников этого рынка не может быть определяющим в развитии самой CS и подготовке специалистов CS. Точно так же, как мнение слесаря ничего не определяет в обучении сопромату, хотя слесарь и является одним из потребителей продуктов, появившихся благодаря развитому обучению сопромату. Ортогональные это вещи — CS и "совокупная ИТ-индустрия", как ни крути. ИТ-индустрия всегда будет галдеть, что ей умники не нужны, хотя она за обе щёки будет уписывать плоды трудов этих самых умников.
C этим я согласен.
LVV>>Далеко ходить не будем — мой аспирант защитил в этом годе как раз диссер на тему количественной оценки качества ПО. Естественно, об измерении всего и со всех сторон речь пока не идет, но видать подходы, куда развивать и как мерить квалификацию — на основе количественного измерения качества.
ГВ>Кстати, любопытно было бы познакомиться с этой диссертацией. Есть где-нибудь в открытом доступе?
Я могу тебе прислать. Напиши мне на serpentvv собака mail.ru
LVV>>Я как раз занимаюсь вопросами оценивания действий студента при реализации некоего задания по программированию. Естественно, в рамках обучающей среды, но которая весьма похожа на промышленную. Разница как раз в этом довеске, который отслеживает студента и оценивает.
ГВ>Любопытно. А поподробней можно?
Здесь писать — опять же долго. Напишу в письме.
LVV>>>>Но с точки зрения здравого смысла, профессионал должен писать быстрее и совершать значительно меньше ошибок. Он должен быть этому обучен.
ГВ>>>С точки зрения способности быстро печатать люди приблизительно одинаковы — 150-250 символов/минуту. Вопрос, как ты понимаешь, упирается в то, что именно печатается. А отсюда мы получаем ещё один не менее интересный вопрос: какова объективная свобода манёвра при выборе решений у "профи", и у вдохновенного любителя? Чем она обусловлена? Напоминаю, что эта самая свобода ограничивается извне общими показателями: общей стоимостью, общим временем, и т.п.
Ну, при прочих равных условиях у профи должна быть бОльшая свобода выбора. Это имхо естественно...
LVV>>Мне представляется, что профи должен значительно больше знать фактического материала вроде структур данных, приемов программирования, тех самых паттернов, наконец.
ГВ>А смысл? Если профи решает те же задачи, что и вчерашний таксист?
А вот мне представляется, что задачи, наверное, должны быть все же разные. опять твой термин приведу: средний профи должен быть тулзописателем, а средний любитель быть им в принципе никак не должен в силу необученности.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[16]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 19.01.10 08:18
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

I>>Здесь проблема в кол.ве знаний-умений которые можно вложить в студента за 5 лет. Получается, что человек, например специалист по физике, сможет писать код завязаный на физику, но не сможет решать глобальные задачи по архитектуре приложения, потому как его подготовка как программиста будет усеченной.


ГВ>По идее, прикладную специализацию имеет смысл вводить на старших курсах, да и то, придавая ей сугубо практический характер с акцентами на имеющиеся библиотеки, системы и т.п. "Общепрограммистская" подготовка от этого страдать не должна, ИМХО.


Прикладную специализацию так не получится дать, потому что если человек занимается физикой, то на это надо убить море времени


I>>для решения чисто программных задач нужны специальности вроде ПОВТАС(Программное обеспечение) в России. При этом здесь тоже достигнут предел — студентны на выходе крайне слабы, даже круглые отличники.


ГВ>Не понял, что значит — "достигнут предел"?


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

I>>Потому уже сейчас неявно вводится специализация — студент как правило выбирает направление сам, т.е. берет или С++, или дотнет или джаву, более того, будущая специализация определяется его первыми проектами.

I>>Все что нужно — неявное сделать явным.

ГВ>Очень резко не согласен с такой позицией. Выделенное — это чушь какая-то, а не специализация. Да и первые проекты — тоже сомнительное основание для специализации, поскольку ими, скорее всего, окажутся те, где в данный момент оказались вакантные места.


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

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

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

ГВ>Тогда нужно снимать тезисы о трансформации высшего образования. Либо я не понимаю, о каких таких "умниках" идёт речь.


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

I>>На ПТУ перекладываются профессии, где работать приходится в основном руками.


ГВ>Нет. На ПТУ перекладывается узкоспециальная подготовка, не требующая глубоких теоретических познаний. Сравни токаря и конструктора металлорежущего оборудования.


Токарь работает руками, а конструктор — головой Теоретические познания — скучновато звучит

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


ГВ>Согласен. Только хирурги не "попроще", а менее опытные, да и ответственности у врачей побольше, чем у программистов.


Я это и имел ввиду.
Re[17]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 19.01.10 08:34
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>А я считаю, что эта специализация вообще чушь полная. Практика нужна, а не специализация. Специалистов у нас и так готовят в профильных вузах.


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

VD>Фактически если взять программиста-самоучку который прочел много умных книг и имеет большой опыт программирования, и "программиста-проффесионала" который подготовлен любым (даже самым лучшим вузом), то последний будет и в подметки первому не годиться, если он не имеет достаточно практики программирования.


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

VD>Даже в ПТУ учат на практике. Там теоретические занятия перемежаются с практическими. Без этого нельзя подготовить рабочего который должен работать на станке или даже сварщика.


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

VD>Так что чтобы было больше хороших специалистов, нужно сделать две вещи:

VD>1. Ввести обязательную практику хотя бы на двух последних курсах (а по уму с первого, наращивая ее объем к концу обучения).

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

VD>2. Ввести аналог ординатуры в медицине когда человека за копейки сбагривают работать в реальные конторы (возможно госучреждения где требуется автоматизация, а может и с коммерческими как-то связь наладить).



VD>3. Таки похоронить С++, как источник неоправданных сложностей в обучении и использовании.


С++ надо похоронить, хватит одного Си, что бы студенты могли понять что такое комп, а что такое ОС.
Re[17]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 19.01.10 08:36
Оценка:
Здравствуйте, VladD2, Вы писали:

ГВ>>Согласен. Только хирурги не "попроще", а менее опытные, да и ответственности у врачей побольше, чем у программистов.


VD>Кстати — это чуешь. Хирурги хирургам не помогают. Им помогают ординаторы (крючки держат), которые за одно и обучаются.


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

Ординаторы они уже врачи в первую очередь, т.е. у них есть высше образование.
Re[22]: Перевод статьи Страуструпа
От: igna Россия  
Дата: 19.01.10 11:19
Оценка:
Здравствуйте, Privalov, Вы писали:

P>Это арифметический IF. Зато можно было GOTO не писать.


Арифметический IF имел все те же проблемы, что и GOTO.

(На всякий случай, чтоб никто из незнакомых с Фортраном не подумал, что арифметический IF чем-то принципиально лучше чем GOTO, на самом деле он просто сокращение, синтаксический сахар, как сейчас говорят.)
Re[23]: Перевод статьи Страуструпа
От: Privalov  
Дата: 19.01.10 11:28
Оценка:
Здравствуйте, igna, Вы писали:

I>Арифметический IF имел все те же проблемы, что и GOTO.


Разумеется. Спагетти шикарный получался. Но GOTO в явном виде все же не было.

I>(На всякий случай, чтоб никто из незнакомых с Фортраном не подумал, что арифметический IF чем-то принципиально лучше чем GOTO, на самом деле он просто сокращение, синтаксический сахар, как сейчас говорят.)


На самом деле возможность объявления переменных по умолчанию или неявно — хуже GOTO. И потому, когда у нас появилась реализация Фортран-90, первое, что я сделал — поставил IMPLICIT NONE везде, где только было можно.
Re[13]: Перевод статьи Страуструпа
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 19.01.10 11:31
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>Не... Вирт говорил как раз не о персоналиях, а как раз о том, что ты ниже написал. Вирт в докладе "Потерянная дорогв" (можно посмотреть текст на сайте Информатика-21) говорит о том, что образование пошло не по той дороге. По дороге, наявязанной промышленностью. То есть стало готовить по твоей терминологии — конфигураторов, а не тулзописателей. И Вирт призывал как раз послать промышленность нафиг и начать учить тулзописателей.


Да... Пересмотрел статью — тут я поспешно Вирта приплёл. Хотя в его рассуждениях других тараканов хватает.

ГВ>>Кстати, любопытно было бы познакомиться с этой диссертацией. Есть где-нибудь в открытом доступе?

LVV>Я могу тебе прислать. Напиши мне на serpentvv собака mail.ru

Написал.

LVV>>>>>Но с точки зрения здравого смысла, профессионал должен писать быстрее и совершать значительно меньше ошибок. Он должен быть этому обучен.

ГВ>>>>С точки зрения способности быстро печатать люди приблизительно одинаковы — 150-250 символов/минуту. Вопрос, как ты понимаешь, упирается в то, что именно печатается. А отсюда мы получаем ещё один не менее интересный вопрос: какова объективная свобода манёвра при выборе решений у "профи", и у вдохновенного любителя? Чем она обусловлена? Напоминаю, что эта самая свобода ограничивается извне общими показателями: общей стоимостью, общим временем, и т.п.
LVV>Ну, при прочих равных условиях у профи должна быть бОльшая свобода выбора. Это имхо естественно...

Ну откуда ж она у него возьмётся, если у него снизу "всё придумано до тебя", сверху "NIH" в форме указания, а перед глазами задача "на пять кнопок, два едитбокса и одну таблицу в БД"?

LVV>>>Мне представляется, что профи должен значительно больше знать фактического материала вроде структур данных, приемов программирования, тех самых паттернов, наконец.

ГВ>>А смысл? Если профи решает те же задачи, что и вчерашний таксист?
LVV>А вот мне представляется, что задачи, наверное, должны быть все же разные. опять твой термин приведу: средний профи должен быть тулзописателем, а средний любитель быть им в принципе никак не должен в силу необученности.

Ключевое слово: "должны". Тут много факторов может столкнуться, вообще говоря.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[17]: Перевод статьи Страуструпа
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 19.01.10 12:00
Оценка:
Здравствуйте, Ikemefula, Вы писали:

ГВ>>По идее, прикладную специализацию имеет смысл вводить на старших курсах, да и то, придавая ей сугубо практический характер с акцентами на имеющиеся библиотеки, системы и т.п. "Общепрограммистская" подготовка от этого страдать не должна, ИМХО.


I>Прикладную специализацию так не получится дать, потому что если человек занимается физикой, то на это надо убить море времени


Физика в качестве специализации, по-моему, крайность.

I>>>для решения чисто программных задач нужны специальности вроде ПОВТАС(Программное обеспечение) в России. При этом здесь тоже достигнут предел — студентны на выходе крайне слабы, даже круглые отличники.


ГВ>>Не понял, что значит — "достигнут предел"?


I>Это значит что нельзя повысить уровень подготовки за счет мега-предметов. Все что можно дать за 5 лет, в основном и дают. И вобщем студенты на выходе достаточно слабые.


Хм. Так может, действительно, практики только не хватает?

I>>>Потому уже сейчас неявно вводится специализация — студент как правило выбирает направление сам, т.е. берет или С++, или дотнет или джаву, более того, будущая специализация определяется его первыми проектами.

I>>>Все что нужно — неявное сделать явным.

ГВ>>Очень резко не согласен с такой позицией. Выделенное — это чушь какая-то, а не специализация. Да и первые проекты — тоже сомнительное основание для специализации, поскольку ими, скорее всего, окажутся те, где в данный момент оказались вакантные места.


I>Выделеное достачтоно просто объясняется — если студент взялся за джаву, то точно можно сказать, что это будет не геймдев и не десктоп приложения. При этом на первую работу студент приходит обычно только со знанием языка и кое какими знаниями по фреймворку. Посму уже первые несколько проектов привяжут студента к специализации.


I>А через два года после института уже всегда ясно, чем занимается человек, это всегда можно опсать одним-двумя словами. Это и есть специализация. И это далеко не всегда какая нибудь предметная область вроде экономики, чисто программухи хватает валом.


I>Вот уже опытному разработчику гораздо легче сменить спецализацию, потому что он "дообучился" всяким универсальным вещам вроде архитектуры. Но и здесь смена может быть только в опреленных рамках. После джавы-дотнета мало кто уходит писать драйвера или ядро ОС ковырять.


Бедные студенты. Я-то всё по-старинке думаю, что для программиста "профи" не должно быть принципиальных ограничений, какую именно программу писать: понадобился драйвер — написали драйвер; потребовалось ОС подкрутить — подкрутили ОС; UI+DB — это вообще не больше, чем развитие классики "диалоговых программ" (web — ну урод, конечно, но что уж поделать); язык написать — тоже не ахти, какая проблема; красивых картинок — "их есть у меня". В одиночку, или "в команде" (никогда, кстати, не понимал всей глубины сакрального смысла этого термина) — в зависимости от задачи. Разница только в той информации, которая задержалась в кратковременной памяти. А тут поди ж ты...

Мда, похоже, я сильно отстал от жизни.

ГВ>>Тогда нужно снимать тезисы о трансформации высшего образования. Либо я не понимаю, о каких таких "умниках" идёт речь.


I>Твои "не шибко умники" должны иметь шанс дорасти до мега-девелоперов. Если загонять их в ПТУ, это значит, что они такими никогда не станут, по причине отсутствия должной теоретической подготовки. Им нельзя доверить даже конфигуряние доверить, т.к. уже оно требует нормальную теоретическую подготовку. первые два курса университета дают теоретическую базу гораздо больше, чем в ПТУ, при чем намного больше.


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

I>>>На ПТУ перекладываются профессии, где работать приходится в основном руками.

ГВ>>Нет. На ПТУ перекладывается узкоспециальная подготовка, не требующая глубоких теоретических познаний. Сравни токаря и конструктора металлорежущего оборудования.
I>Токарь работает руками, а конструктор — головой Теоретические познания — скучновато звучит

На самом деле и тот, и другой работают как руками, так и головой. Просто области несколько отличаются.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[17]: Перевод статьи Страуструпа
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 19.01.10 12:50
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>А я считаю, что эта специализация вообще чушь полная. Практика нужна, а не специализация.


Одно другого не отрицает, не надо противопоставлять.

VD>Фактически если взять программиста-самоучку который прочел много умных книг и имеет большой опыт программирования, и "программиста-проффесионала" который подготовлен любым (даже самым лучшим вузом), то последний будет и в подметки первому не годиться, если он не имеет достаточно практики программирования.


Согласен, только по-моему, ты ломишься в открытые двери.

VD>Даже в ПТУ учат на практике. Там теоретические занятия перемежаются с практическими. Без этого нельзя подготовить рабочего который должен работать на станке или даже сварщика.

VD>А у программистов почему-то считается, что можно научить программировать без реальной практики. Это нонсенс!

Где такое считается?

VD>Так что чтобы было больше хороших специалистов, нужно сделать две вещи:

VD>1. Ввести обязательную практику хотя бы на двух последних курсах (а по уму с первого, наращивая ее объем к концу обучения).

Тут я тоже согласен.

VD>2. Ввести аналог ординатуры в медицине когда человека за копейки сбагривают работать в реальные конторы (возможно госучреждения где требуется автоматизация, а может и с коммерческими как-то связь наладить).


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

VD>3. Таки похоронить С++, как источник неоправданных сложностей в обучении и использовании.


Ну это, как водится... Должно же быть хоть что-то постоянное: будет борьба с C++. В прочем, с тем, что C++ не подходит для обучения даже я согласен.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[17]: Перевод статьи Страуструпа
От: TMU_1  
Дата: 19.01.10 13:11
Оценка:
VD>Кстати — это чуешь. Хирурги хирургам не помогают. Им помогают ординаторы (крючки держат), которые за одно и обучаются.

Это, прямо скажем, зависит от операции. В смысле ее сложности. Бывает, что кандидаты наук ассистируют.
Re[18]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 19.01.10 13:39
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

I>>Прикладную специализацию так не получится дать, потому что если человек занимается физикой, то на это надо убить море времени


ГВ>Физика в качестве специализации, по-моему, крайность.


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

I>>Это значит что нельзя повысить уровень подготовки за счет мега-предметов. Все что можно дать за 5 лет, в основном и дают. И вобщем студенты на выходе достаточно слабые.


ГВ>Хм. Так может, действительно, практики только не хватает?


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

I>>Вот уже опытному разработчику гораздо легче сменить спецализацию, потому что он "дообучился" всяким универсальным вещам вроде архитектуры. Но и здесь смена может быть только в опреленных рамках. После джавы-дотнета мало кто уходит писать драйвера или ядро ОС ковырять.


...
ГВ>>Разница только в той информации, которая задержалась в кратковременной памяти. А тут поди ж ты...
...
ГВ>Мда, похоже, я сильно отстал от жизни.

К кратковрменной сводить нельзя. У профессионалов задействована и долговременная память очень сильно. Они вобщм то этим и отличаются от новичков.

Если речь идет о смене деятельности, то это вполне возможно. А вот если переключиться на низкоуровневую разработку на том же С++, то мне например это крайне тяжело.

ГВ>Что-то я запутался. По твоим словам выходит, что менять, фактически ничего не нужно


Нужно вводить специализации отказаться, например, от предметов вроде "Графический интерфейс", "Машинная графика", "Обработка изображений" и тд, вместо этого увеличить практику по другим предметам, например "структуры данных", "ООП", "ФП".

I>>Токарь работает руками, а конструктор — головой Теоретические познания — скучновато звучит


ГВ>На самом деле и тот, и другой работают как руками, так и головой. Просто области несколько отличаются.


Буквально то да. Но дело не в областях. Программитст этот тот же конструктор, как правило делает нечто, чего еще не существует(или не известно про такое существование). Токарь же повторяет одни и те же отработаные действия.
Re[18]: Перевод статьи Страуструпа
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.01.10 13:57
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>Много практики просто так не всунуть, чтото придется выкинуть.


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

I>А что бы появились те же мега-преподаватели, надо где то их специально готовить. Образование здесь очень сильно хромает, т.к. даже преподавателей негде взять.


+1

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

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

VD>>Фактически если взять программиста-самоучку который прочел много умных книг и имеет большой опыт программирования, и "программиста-проффесионала" который подготовлен любым (даже самым лучшим вузом), то последний будет и в подметки первому не годиться, если он не имеет достаточно практики программирования.


I>Самообразование, как и самолечение, крайне редко даёт хороший результат.


Полная ерунда! Как первое, так и второе утверждение. Разрушается банальным примером того, что 90% знаменитных людей из мира IT просто не могли получить профильного образования, так как его просто не где было взять.

Про самолечение тоже неверно. Есть тысячи успешных примеров. Лично мне далеко ходить не надо. Знаком с одним случаем на собственном опыте.

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

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


Пробелы в разных областях имеют все, так как нельзя знать все.

I>Вот если есть хорошая база, то можно набирать вес самообразованием, но опять же лучше дообучаться в конкретных коллективах-проектах.


Хорошую базу можно получить прочитав 10 книг.
Более того, если перед прочтением будет реальный опыт, то книги не пройдут даром (как и сидение на лекциях). А если оного опыта нет, то без толку, что книги, что лекции.

Прошу понять, что я не призываю отказаться от обучения. Я считаю, что оно обязано идти параллельно с практическими занятиями. И то что это не понимают те кто занимается обучением — очень прискорбно.

VD>>Даже в ПТУ учат на практике. Там теоретические занятия перемежаются с практическими. Без этого нельзя подготовить рабочего который должен работать на станке или даже сварщика.


I>В ПТУ не дают теоретическую подготовку.


Это просто полнейшая чушь! Дают. Еще как дают! Даже сварщикам.

I>Там дают минимум который человек должен усвоить, что бы включать-выключать станок и делать на нем кое какие операции.


VD>>Так что чтобы было больше хороших специалистов, нужно сделать две вещи:

VD>>1. Ввести обязательную практику хотя бы на двух последних курсах (а по уму с первого, наращивая ее объем к концу обучения).

I>А где время на это взять ? На двух поледних курсах студенты обычно и без этой практики загружены довольно сильно.


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

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


+1
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[19]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 19.01.10 14:50
Оценка:
Здравствуйте, VladD2, Вы писали:

I>>Самообразование, как и самолечение, крайне редко даёт хороший результат.


VD>Полная ерунда! Как первое, так и второе утверждение. Разрушается банальным примером того, что 90% знаменитных людей из мира IT просто не могли получить профильного образования, так как его просто не где было взять.


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

VD>Вообще, человек с инженерным складом ума может справиться с любой проблемой, если подойдет к ее решению серьезно.


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

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


VD>Хорошую базу можно получить прочитав 10 книг.

VD>Более того, если перед прочтением будет реальный опыт, то книги не пройдут даром (как и сидение на лекциях). А если оного опыта нет, то без толку, что книги, что лекции.

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

I>>А где время на это взять ? На двух поледних курсах студенты обычно и без этой практики загружены довольно сильно.


VD>Вы по шесть лет людей учите. Не уж то времени нет?

VD>Два дня в неделю нужно посвящать практическим занятиям. Или так. На первом курсе один день, а на последнем не менее трех.

5 лет. Два дня в неделю — это надо выкинуть 4 предмета из каждых 10, при том где то 30 процентов это общие предмты вроде физики, математики и тд.
Re[18]: Перевод статьи Страуструпа
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.01.10 14:53
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>Это не чушь. Зависит от сложности операций. Некоторые так хирурги и вовсе в одиночку проводят с помощью/без помощи медсестры. А есть и такие, где помогают хирурги попроще.


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

I>Ординаторы они уже врачи в первую очередь, т.е. у них есть высше образование.


Ординаторы — это ученики в первую очередь. Операции им не доверяют. Более того, ординатор может быть не хирургом. Моя жена эндоскопист, но в ординатуре ассистировала хирургам (держала те самые крючки). Особого ума для этого не нужно.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[19]: Перевод статьи Страуструпа
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 19.01.10 15:09
Оценка:
Здравствуйте, Ikemefula, Вы писали:

ГВ>>Физика в качестве специализации, по-моему, крайность.

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

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

I>>>Это значит что нельзя повысить уровень подготовки за счет мега-предметов. Все что можно дать за 5 лет, в основном и дают. И вобщем студенты на выходе достаточно слабые.

ГВ>>Хм. Так может, действительно, практики только не хватает?
I>Нужно или больше времени или узкая специализация. Ординатуру оформить, как в медицине, не получится, так что выбор не велик.

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

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

I>>>Вот уже опытному разработчику гораздо легче сменить спецализацию, потому что он "дообучился" всяким универсальным вещам вроде архитектуры. Но и здесь смена может быть только в опреленных рамках. После джавы-дотнета мало кто уходит писать драйвера или ядро ОС ковырять.


I>...

ГВ>>>Разница только в той информации, которая задержалась в кратковременной памяти. А тут поди ж ты...
I>...
ГВ>>Мда, похоже, я сильно отстал от жизни.

I>К кратковрменной сводить нельзя. У профессионалов задействована и долговременная память очень сильно. Они вобщм то этим и отличаются от новичков.


Ну да, это называется опытом и образованием.

I>Если речь идет о смене деятельности, то это вполне возможно. А вот если переключиться на низкоуровневую разработку на том же С++, то мне например это крайне тяжело.


Понятно, что на практике не всё так шоколадно, как я об этом написал, определённый барьер (в основном, от нежелания возиться) появляется. То, что я имел в виду — это скорее некая максима подготовки специалистов по разработке ПО. В прямом смысле всему научить не возможно, но вот вложить в головы фундамент для облегчения таких переходов, по-моему, необходимо. Просто потом каждый уже выберет для себя, что ему интересней. Учти ещё, что эти выборы имеют тенденцию меняться — в 20 "душа лежит" к одному, в 25 — к другому, в 30 — к третьему и т.п.

ГВ>>Что-то я запутался. По твоим словам выходит, что менять, фактически ничего не нужно

I>Нужно вводить специализации отказаться, например, от предметов вроде "Графический интерфейс", "Машинная графика", "Обработка изображений" и тд, вместо этого увеличить практику по другим предметам, например "структуры данных", "ООП", "ФП".

В смысле? Сделать ООП/ФП специализацией?

I>>>Токарь работает руками, а конструктор — головой Теоретические познания — скучновато звучит

ГВ>>На самом деле и тот, и другой работают как руками, так и головой. Просто области несколько отличаются.
I>Буквально то да. Но дело не в областях. Программитст этот тот же конструктор, как правило делает нечто, чего еще не существует(или не известно про такое существование). Токарь же повторяет одни и те же отработаные действия.

Токари тоже много чего придумывают, так что, я бы не стал так уж упрощать.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[20]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 19.01.10 15:28
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>Ну, мне тоже "экономическая информатика" представляется каким-то перегибом. В принципе, наверное, я бы так не думал, если бы речь шла о применениях компьютерного моделирования в экономике...


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

ГВ>Аналога ординатуры не получится, потому что к ней нет никаких предпосылок, кроме завываний ИТ-индустрии. А это достаточно слабая предпосылка. Но по-моему, вполне может получиться, если, например, позволить заменять курсовые работы (тем более — "типовые" курсовики) какими-то коллективными разработками практической направленности (с полным циклом сопровождения, общения с пользователями и т.п.) Тут и передача кода из рук в руки, и полный букет впечатлений от "тех идиотов, которые это писали", плюс к тому — весь цикл планирования, документирования, конфигурационного управления...


В Мит так и сделали.

ГВ>Хм. А вот кстати. Любопытная мысль... Знаешь, мне кажется, что лабораторки/курсовые в качестве квази-практики программистам совсем не подходят.


Страуструп про то и пишет, курсовой это обычно до 1000 строчек кода, ну, от силы, 10000 у тех студентов которы копипастерами готовятся быть.

При этом проекты более менее серьезные это уже от 100к если по строчкам, а 1КК и даже 10КК обычное дело.

ГВ>>>Что-то я запутался. По твоим словам выходит, что менять, фактически ничего не нужно

I>>Нужно вводить специализации отказаться, например, от предметов вроде "Графический интерфейс", "Машинная графика", "Обработка изображений" и тд, вместо этого увеличить практику по другим предметам, например "структуры данных", "ООП", "ФП".

ГВ>В смысле? Сделать ООП/ФП специализацией?


Что бы сделать "универсала" нужно выбросить побольше мусора вроде перечисленного и усилить за счет общих предметов.
Re[19]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 19.01.10 16:00
Оценка:
Здравствуйте, VladD2, Вы писали:

I>>Это не чушь. Зависит от сложности операций. Некоторые так хирурги и вовсе в одиночку проводят с помощью/без помощи медсестры. А есть и такие, где помогают хирурги попроще.


VD>Это чушь. Есть понятие хирургическая бригада. Там много людей (анестезиолог, хирург, помощники, ...). Но хирург там один. Другие хирурги конечно могут присутствовать в качестве наблюдателей или для подстраховаки, но не более того.


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

I>>Ординаторы они уже врачи в первую очередь, т.е. у них есть высше образование.


VD>Ординаторы — это ученики в первую очередь.


ординатором можт быть только врач и вот отсюда и надо смотреть.

VD>Операции им не доверяют. Более того, ординатор может быть не хирургом. Моя жена эндоскопист, но в ординатуре ассистировала хирургам (держала те самые крючки). Особого ума для этого не нужно.


И при этом она имеет высшее образование, а не ПТУ, как медсестры
Re[20]: Перевод статьи Страуструпа
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.01.10 16:11
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>Смотря какие операции. Если операция длится много часов, то один хирург просто не выдюжит, его придется сменить.


Даже если операция многочасовая, все равно один хирург ее ведет. Там жизнь от этого зависит.

I>ординатором можт быть только врач и вот отсюда и надо смотреть.


Не. Все ровно наоборот. Ординатура дает человеку возможность стать дипломированным врачом.

VD>>Операции им не доверяют. Более того, ординатор может быть не хирургом. Моя жена эндоскопист, но в ординатуре ассистировала хирургам (держала те самые крючки). Особого ума для этого не нужно.


I>И при этом она имеет высшее образование, а не ПТУ, как медсестры


Ага, высшее. Но перед этим отучилась в училише на медсестру и отработала медсестрой несколько лет. А в ординатуре каждый день практиковалась на реальных пациентах (под присмотром опытных эндоскопистов).

В общем, там без практики пациента не доверят.

ЗЫ

Еще раз. Я не против образования. Я против чистого образования без практики. Программист не ученый-теоретик. Программист практик. Программиста можно сравнивать с рабочим или инженером (в зависимости от того какие задачи он решает). И ему нужна практика.

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

Вот ответь мне, плиз. В вашем учебном заведении есть курс отладки ПО? А что такое системы контроля версий ученики проходят?
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[21]: Перевод статьи Страуструпа
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 19.01.10 16:36
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>>>Более того, если перед прочтением будет реальный опыт, то книги не пройдут даром (как и сидение на лекциях). А если оного опыта нет, то без толку, что книги, что лекции.

I>>А я считаю базу можно поднять тоьлко практикой, а не книгами. Книги это чисто ориентиры, куда практиковаться надо.
VD>И с чем спорит это утверждение? Я тоже считаю, что практика — это главное. Но практика без теории мало эффективна. Человек должен сталкнуться с проблемой. Тогда он сможет найти литературу облегчающую решение этой проблемы и познав теорию справиться с проблемой. Образование же пытается идти от обратного. Людям на всякий пожарный запихивают в голову все что попало.

Конечно-конечно, а идентифицирует он проблему, надо думать, по наитию. Вот такой вот гений — р-раз, и синтезировал, например, симплекс-метод. Потом — щёлк, и снизошло озарение, что преобразование координат — это операция на матрицах (заодно и матрицы выдумал). Бам-с, и вот тебе формальные грамматики. Чудо-чудное, диво-дивное!

VD>>>Вы по шесть лет людей учите. Не уж то времени нет?

VD>>>Два дня в неделю нужно посвящать практическим занятиям. Или так. На первом курсе один день, а на последнем не менее трех.

I>>5 лет.

VD>Тоже не мало. Но если надо можно и по 6 учить.

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

I>>Два дня в неделю — это надо выкинуть 4 предмета из каждых 10, при том где то 30 процентов это общие предмты вроде физики, математики и тд.

VD>А они эти 10 предметов вообще нужны? Программисту в 99% случаев средней школы за глаза хватает. Зачем программисту физика уровня выше школьной программы? А матанализ зачем? Мозг развивать? Может тогда лучше развивать мозг реальным программированием.

Осталось ответить на вопрос: куда будет развиваться мозг без фундаментального образования. Я, кажется, знаю: в сторону "что тут думать, всё давно написано".

VD>Мое мнение специализация как раз нужна в этих вот физиках и математиках.


Короче говоря, специализация нужна там, что подальше от тебя, угу.

VD>Вот если программист хочет посвятить себя неким облостям деятельности где нужна высшая математика, то пусть и учит ее на верхних ступенях обучения. Возможно как воторое высшее образование. А возможно на 6-ом курсе (которого пока нет).


Интегралы, кстати, это высшая математика, матрицы — тоже. Теория графов, ты удивишься — почти оттуда же. Действительно, на хрена программисту ВМ?

VD>В общем, вы (учителя) сами создали проблему там где ее не было.


Наоборот. Проблему сейчас создаёт очень большое количество самоучек, которые "прочли 10 книг", а потом пошли выступать по поводу того, что в вузах много лишнего. Вот это и есть источник проблем для вузовского образования. Не считая традиционных конфликтов молодых специалистов и "реального производства".
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[21]: Перевод статьи Страуструпа
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 19.01.10 16:44
Оценка:
Здравствуйте, VladD2, Вы писали:

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


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

VD>Вот ответь мне, плиз. В вашем учебном заведении есть курс отладки ПО? А что такое системы контроля версий ученики проходят?


Системы контроля версий — это один день чтения документации и один день практического освоения, если человек знает, что такое "файл" и "версия". Хорошо, два и два дня. Отладка ПО, ИМХО, за академическую дисциплину вообще "не канает".
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[9]: Перевод статьи Страуструпа
От: Шахтер Интернет  
Дата: 19.01.10 16:49
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>Здравствуйте, Шахтер, Вы писали:


I>>>>Профессионализм это уровень, масштаб мышления — чисто для конкретики, а то из твоей формулировки непойми что следует.

LVV>>>Ну, да... Вирт, естественно имел ввиду, что профессионал должен быть на порядок продуктивней любителя с точки зрения количества и качества разрабатываемого ПО. И пока мы этого не наблюдаем.

Ш>>Неправда. Ещё как наблюдаем. Просто вы (и Вирт) в профессионалы не тех записываете.


I>А что значит профессионал по твоему ?


Человек, умеющий делать свою работу и отвечать за результат.
В XXI век с CCore.
Копай Нео, копай -- летать научишься. © Matrix. Парадоксы
Re[9]: Перевод статьи Страуструпа
От: Шахтер Интернет  
Дата: 19.01.10 16:52
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>Здравствуйте, Шахтер, Вы писали:


I>>>>Профессионализм это уровень, масштаб мышления — чисто для конкретики, а то из твоей формулировки непойми что следует.

LVV>>>Ну, да... Вирт, естественно имел ввиду, что профессионал должен быть на порядок продуктивней любителя с точки зрения количества и качества разрабатываемого ПО. И пока мы этого не наблюдаем.
Ш>>Неправда. Ещё как наблюдаем. Просто вы (и Вирт) в профессионалы не тех записываете.
LVV>Очевидно, вы прекрасно представляете, кого я (и Вирт) записываю в профессионалы.

Нет, я отлично представляю, что профи делают больше и лучше, чем ламо. Простейшее логическое заключение из этого сделайте сами.
В XXI век с CCore.
Копай Нео, копай -- летать научишься. © Matrix. Парадоксы
Re[22]: Перевод статьи Страуструпа
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.01.10 21:51
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>Конечно-конечно, а идентифицирует он проблему, надо думать, по наитию. Вот такой вот гений — р-раз, и синтезировал, например, симплекс-метод. Потом — щёлк, и снизошло озарение, что преобразование координат — это операция на матрицах (заодно и матрицы выдумал). Бам-с, и вот тебе формальные грамматики. Чудо-чудное, диво-дивное!


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

ГВ>Ясное дело, если добавить год-другой обязательной практики за минимальные деньги, то индустрия будет в полном восторге — не просто "молодняк", а ещё и с образованием, да ещё и задарма.


В восторге? Это такой сарказм?

ГВ>Осталось ответить на вопрос: куда будет развиваться мозг без фундаментального образования. Я, кажется, знаю: в сторону "что тут думать, всё давно написано".


Почему "без"? Вот кому нужен фундаментально образованный программист который программ писать не умеет?

ГВ>Интегралы, кстати, это высшая математика, матрицы — тоже. Теория графов, ты удивишься — почти оттуда же. Действительно, на хрена программисту ВМ?


Вопрос в объеме.
Кстати работать с графами без знания теории графов можно без особых проблем .

VD>>В общем, вы (учителя) сами создали проблему там где ее не было.


ГВ>Наоборот. Проблему сейчас создаёт очень большое количество самоучек, которые "прочли 10 книг", а потом пошли выступать по поводу того, что в вузах много лишнего. Вот это и есть источник проблем для вузовского образования. Не считая традиционных конфликтов молодых специалистов и "реального производства".


Акстись. Зайди в любую ИТ-контору и поговори с теми кто набирает программистов. Они тебе расскажут про этих теоретиков проходивших мимо теорий графов и высшей математики, и о том сколько хороших программистов выходит из вызов.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[22]: Перевод статьи Страуструпа
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.01.10 21:56
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>Чтобы получить вместо инженера некое создание, витающее в социальных небесах? Тогда уж необходим курс психологии и биологии в комплекте. Кстати, против психологии в курсе обучения программирования ничего не имею.


Зачем психология программисту? Если только он планирует стать начальником. Вот курс логики нужен обязательно. А то некоторые программисты задалбывают алогичным мышлением.

VD>>Вот ответь мне, плиз. В вашем учебном заведении есть курс отладки ПО? А что такое системы контроля версий ученики проходят?


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


Трепач — находка для пшиёнов.

Кому на фиг нужен ваш программист напичканный "академическими дисциплинами" но не умеющий отлаживать программы?

ГВ>Отладка ПО, ИМХО, за академическую дисциплину вообще "не канает".
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[23]: Перевод статьи Страуструпа
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 20.01.10 00:01
Оценка:
Здравствуйте, VladD2, Вы писали:

ГВ>>Конечно-конечно, а идентифицирует он проблему, надо думать, по наитию. Вот такой вот гений — р-раз, и синтезировал, например, симплекс-метод. Потом — щёлк, и снизошло озарение, что преобразование координат — это операция на матрицах (заодно и матрицы выдумал). Бам-с, и вот тебе формальные грамматики. Чудо-чудное, диво-дивное!


VD>Чтобы хотя бы задуматься о преобразовании координат, нужно начать решать задачу где они нужны. Заставь человека писать 3D-игру, он тебе сам через неделю все про матрицы расскажет.


Я предпочту, чтобы ему об этом рассказали дядьки-профессора.

ГВ>>Ясное дело, если добавить год-другой обязательной практики за минимальные деньги, то индустрия будет в полном восторге — не просто "молодняк", а ещё и с образованием, да ещё и задарма.

VD>В восторге? Это такой сарказм?

Нет. Предположение.

ГВ>>Осталось ответить на вопрос: куда будет развиваться мозг без фундаментального образования. Я, кажется, знаю: в сторону "что тут думать, всё давно написано".

VD>Почему "без"? Вот кому нужен фундаментально образованный программист который программ писать не умеет?

Не выдумывай противопоставления. Необходимость практики никто не отрицает.

ГВ>>Интегралы, кстати, это высшая математика, матрицы — тоже. Теория графов, ты удивишься — почти оттуда же. Действительно, на хрена программисту ВМ?

VD>Вопрос в объеме.
VD>Кстати работать с графами без знания теории графов можно без особых проблем .

А... Ну да, в конце концов, что графы, что бутявки кузявые — однофигственно.

VD>>>В общем, вы (учителя) сами создали проблему там где ее не было.

ГВ>>Наоборот. Проблему сейчас создаёт очень большое количество самоучек, которые "прочли 10 книг", а потом пошли выступать по поводу того, что в вузах много лишнего. Вот это и есть источник проблем для вузовского образования. Не считая традиционных конфликтов молодых специалистов и "реального производства".
VD>Акстись. Зайди в любую ИТ-контору и поговори с теми кто набирает программистов. Они тебе расскажут про этих теоретиков проходивших мимо теорий графов и высшей математики, и о том сколько хороших программистов выходит из вызов.

Успокойся, знаю. Только это вовсе не означает, что надо отменять ВМ.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[23]: Перевод статьи Страуструпа
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 20.01.10 00:12
Оценка:
Здравствуйте, VladD2, Вы писали:

ГВ>>Чтобы получить вместо инженера некое создание, витающее в социальных небесах? Тогда уж необходим курс психологии и биологии в комплекте. Кстати, против психологии в курсе обучения программирования ничего не имею.

VD>Зачем психология программисту? Если только он планирует стать начальником.

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

VD>Вот курс логики нужен обязательно. А то некоторые программисты задалбывают алогичным мышлением.


О! Редкий случай — ППКС.

VD>>>Вот ответь мне, плиз. В вашем учебном заведении есть курс отладки ПО? А что такое системы контроля версий ученики проходят?


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

VD>Трепач — находка для пшиёнов.

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

ГВ>>Отладка ПО, ИМХО, за академическую дисциплину вообще "не канает".

VD>Кому на фиг нужен ваш программист напичканный "академическими дисциплинами" но не умеющий отлаживать программы?
(переставил реплики местами)

Не путай практические приёмы и теорию. Практика отладки начинается с первой же [не]написанной программой.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[21]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 20.01.10 09:17
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Даже если операция многочасовая, все равно один хирург ее ведет. Там жизнь от этого зависит.


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

I>>ординатором можт быть только врач и вот отсюда и надо смотреть.


VD>Не. Все ровно наоборот. Ординатура дает человеку возможность стать дипломированным врачом.


" в Российской Федерации с 1946 высшая форма повышения квалификации врачей "

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

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

т.е. она необязательна для того, что бы стать врачом.

Т.е. надо сначала стать врачом, а уже потом подавать документы в ординатуру.

У жены спроси то

VD>Еще раз. Я не против образования. Я против чистого образования без практики. Программист не ученый-теоретик. Программист практик. Программиста можно сравнивать с рабочим или инженером (в зависимости от того какие задачи он решает). И ему нужна практика.


Я ж не спорю с этим

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


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

VD>Вот ответь мне, плиз. В вашем учебном заведении есть курс отладки ПО? А что такое системы контроля версий ученики проходят?


Когда я учился, особо ничего серьёзного не было про отладку. Сейчас до 3го курса точно ничего нет.

Про системы контроля версий ничего не было.
Re[21]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 20.01.10 09:40
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>>>Полная ерунда! Как первое, так и второе утверждение. Разрушается банальным примером того, что 90% знаменитных людей из мира IT просто не могли получить профильного образования, так как его просто не где было взять.


I>>А незнаменитых людей про которых никто не вспомнит, их на порядок больше.


VD>К чему ты это сказал?


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

VD>>>Вообще, человек с инженерным складом ума может справиться с любой проблемой, если подойдет к ее решению серьезно.


I>>Вот благодаря такому взгляду нынешняя подготовка инженеров и оказалась в тупике Инженеры как правило сущие дети в педагогик, методике преподавания, психологии и тд.


VD>С педагогикой наверно сложнее. Тут спорить не буду. Но в медицине для инженера самое сложное это терминалогия. Врачи как будто специально шифруются используя по делу и без дела латынь.


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

Инженер работает с абстракциями и применяет решения для общего случая. Врач не может работать с абстракциями и решения от него требуются для конкретного случая.

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

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


VD>И с чем спорит это утверждение? Я тоже считаю, что практика — это главное. Но практика без теории мало эффективна. Человек должен сталкнуться с проблемой. Тогда он сможет найти литературу облегчающую решение этой проблемы и познав теорию справиться с проблемой. Образование же пытается идти от обратного. Людям на всякий пожарный запихивают в голову все что попало.


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

I>>Два дня в неделю — это надо выкинуть 4 предмета из каждых 10, при том где то 30 процентов это общие предмты вроде физики, математики и тд.


VD>А они эти 10 предметов вообще нужны?


VD>Программисту в 99% случаев средней школы за глаза хватает. Зачем программисту физика уровня выше школьной программы?


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

По этому вопросу как то Синклер вещал, не могу найти правда его сообщения на эту тему.

VD>А матанализ зачем? Мозг развивать? Может тогда лучше развивать мозг реальным программированием.


Матан очень сильно мозг развивает. Кроме того, всякие сильные теории моделирования, алгоритмов и тд они без базы по матану или теорверу невозможны. Соответсвенно если обрезать матан, то для алгоритмов уровнем выше сортировки придется брать специалиста по моделированию-алгоритмам.
Re[21]: Перевод статьи Страуструпа
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 20.01.10 09:48
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>В общем, вы (учителя) сами создали проблему там где ее не было.


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

Если студенты не знают про отладку, систему контроля версий и тд. и тд. — в этом повинны инженеры.

Так что проблему с подготовкой инженеров создали сами инженеры.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.