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[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[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>Кстати — это чуешь. Хирурги хирургам не помогают. Им помогают ординаторы (крючки держат), которые за одно и обучаются.


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

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