Теория вычислительных процессов
От: BlackBox Россия ---
Дата: 08.10.04 12:16
Оценка:
Добрый день, уважаемы олл!!

Сейчас в универе изучаем сабжевый предмет и поэтому хотелось бы у вас спросить — а зачем это нужно в реальность программисту. Что я подразумеваю под "это" — теорию асинхронных процессов, модель Маллера, сети Петри и т.д.??

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

Заранее спасибо за ответы.
Re: Теория вычислительных процессов
От: Rumata Россия http://atamur.livejournal.com
Дата: 08.10.04 12:34
Оценка: 1 (1)
Здравствуйте, BlackBox, Вы писали:

BB>Добрый день, уважаемы олл!!


BB>Сейчас в универе изучаем сабжевый предмет и поэтому хотелось бы у вас спросить — а зачем это нужно в реальность программисту. Что я подразумеваю под "это" — теорию асинхронных процессов, модель Маллера, сети Петри и т.д.??


BB>Кто-нибудь этим реально в свое программисткой дейтельности пользовался??


BB>Заранее спасибо за ответы.

Да. Посмотри, например, на модное направление BPM (Business Procecc Managnemt). Там как рз торчат уши сетей Петри.
Re: Теория вычислительных процессов
От: _Obelisk_ Россия http://www.ibm.com
Дата: 08.10.04 12:52
Оценка:
Здравствуйте, BlackBox, Вы писали:

BB>Добрый день, уважаемы олл!!


BB>Сейчас в универе изучаем сабжевый предмет и поэтому хотелось бы у вас спросить — а зачем это нужно в реальность программисту. Что я подразумеваю под "это" — теорию асинхронных процессов, модель Маллера, сети Петри и т.д.??


BB>Кто-нибудь этим реально в свое программисткой дейтельности пользовался??



Real-time, embedded и прочие подобные штуки активно это используют.



Душа обязана трудиться! (с) Н.Заболоцкий.
Re[2]: Теория вычислительных процессов
От: BlackBox Россия ---
Дата: 08.10.04 12:59
Оценка:
Здравствуйте, _Obelisk_, Вы писали:

_O_>Real-time, embedded и прочие подобные штуки активно это используют.


ухты, и не подумал бы.
Re: Теория вычислительных процессов
От: StanislavK Великобритания  
Дата: 08.10.04 13:29
Оценка: +1 -1
Здравствуйте, BlackBox, Вы писали:

BB>Добрый день, уважаемы олл!!


BB>Сейчас в универе изучаем сабжевый предмет и поэтому хотелось бы у вас спросить — а зачем это нужно в реальность программисту. Что я подразумеваю под "это" — теорию асинхронных процессов, модель Маллера, сети Петри и т.д.??


BB>Кто-нибудь этим реально в свое программисткой дейтельности пользовался??


BB>Заранее спасибо за ответы.


На самом деле нифиаг не надо. Будут товарищи, которые рвут на себе рубаху и будут доказывать, что ни один программист без этого не сможет или, что это довольно широко используется... Возможно, но в очень узких областях, особенно на том уровне, что это дается в универе. В жизни обычно все на пальцах и на опыте.
Но это не повод не учить Мозги развивать надо, на то и универ. Он более ценен не знаниями, а привыче их получать.
Re[2]: Теория вычислительных процессов
От: Quintanar Россия  
Дата: 08.10.04 15:42
Оценка: 3 (1) +1
Здравствуйте, StanislavK, Вы писали:

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

SK>Но это не повод не учить Мозги развивать надо, на то и универ. Он более ценен не знаниями, а привыче их получать.

Надо, чтобы был кругозор. Чтобы знал, что есть такие методы, которые решают такие задачи. Возможно, задача, где потребуется какая-нибудь программистская теория, никогда даже не встретится на практике, но даже в этом случае польза изучения несомненна. Ты понимаешь, как нужно решать сложные задачи, привыкаешь более абстрактно смотреть на проблему и т.п. Ну и надо помнить, что наука не стоит на месте, изучаются и внедряются на практике подходы и теории, которые невозможно понять просто так с наскока, без определенной базы, а быть обезьяной, которой дали в руки сложный инструмент, заботливо убрав все ручки, за которые дергать не надо, тоже не хочется.
Re: Теория вычислительных процессов
От: bugmaker  
Дата: 08.10.04 16:12
Оценка: 9 (2) +2
Здравствуйте, BlackBox, Вы писали:

BB>Добрый день, уважаемы олл!!


BB>Сейчас в универе изучаем сабжевый предмет и поэтому хотелось бы у вас спросить — а зачем это нужно в реальность программисту. Что я подразумеваю под "это" — теорию асинхронных процессов, модель Маллера, сети Петри и т.д.??


BB>Кто-нибудь этим реально в свое программисткой дейтельности пользовался??


BB>Заранее спасибо за ответы.


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

страшно сказать, не приходилось писать вручную даже ни одного алгоритма сортировки

наиболее сложные задачи, с которыми приходится иметь дело сводились к следующему
1. "какой мудак и какой пяткой писал этот код??!!"
2. "этот баг допустил я или Microsoft (Borland, Sun, ...)???"
3. "где в этой хреновой горе документации найти хоть какую нибудь хренову функцию, которая хотя бы делает что-то похожее???"
4. "как бы похитрее вызвать этот компонент, чтобы он ненароком не вызвал тот и этот, а те двое не похерели как раз то, что мне нужно??"

слыхал, что где то все таки существуют конторы занимающиеся наукоемкими задачами, но количество этих контор по отношение к общему числу в айти и количество свободных (!) вакансий в них (причем на тех позициях, которые требуют знания математики в большей степени чем дают в средней школе в первых пяти классах) по-моему как раз соответствует числу настоящих (!) математиков по отношению к общему числу людей

вывод:
если вы просто программист, то знание всего того, что вы перечислили, рынок труда не требует
но если вы настоящий (!) математик, то какое вам вообще дело до рынка труда и его требований
Re[3]: Теория вычислительных процессов
От: _Obelisk_ Россия http://www.ibm.com
Дата: 09.10.04 13:06
Оценка:
Здравствуйте, BlackBox, Вы писали:

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


_O_>>Real-time, embedded и прочие подобные штуки активно это используют.


BB>ухты, и не подумал бы.


В России, правда, труднова-то найти место, где бы такие знания потребовались.
Из западных компаний, например эти
(Telecom сектор): Motorola, Nokia.
(Военные): Raytheon, Lockhead Martin Corp.
(Авио): BAE Systems.



Душа обязана трудиться! (с) Н.Заболоцкий.
Re[3]: Теория вычислительных процессов
От: StanislavK Великобритания  
Дата: 11.10.04 06:56
Оценка: 1 (1) -5
Здравствуйте, Quintanar, Вы писали:

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


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

SK>>Но это не повод не учить Мозги развивать надо, на то и универ. Он более ценен не знаниями, а привыче их получать.

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


Это все "бла-бла-бла", пустые слова. Но желание защитить честь 5-ти, а то и 8-9-ти, потраченых лет, конечно похвально. В прикладном программированиии таких проблем нет. Более абстрактных взгляд на проблему тут не при чем. Преподы, которые к реальным задачам чаще всего отношения не имеют или работают в условиях далеких от коммерческих не могут правильно подать материал, да и не хотят. Им более интерестно "заниматься наукой".
То, что дают в институте — это одно, а практика совершено другое и эти вещи почти не пересекаются. Надуюсь, что ситуацию будет изменяться к лучшему. Но года 3-4 назад все было так как я говорю и я уверен, что к лучшему наше образование не сильно сдивинулось. Математиков у нас готовят, но программистов — нет.
Исключения, конесно, есть всегда. Если есть положительные прецеденты — поделитесь.
Re: Теория вычислительных процессов
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 11.10.04 07:17
Оценка:
Здравствуйте, BlackBox, Вы писали:

BB>Кто-нибудь этим реально в свое программисткой дейтельности пользовался??


Я. Моделировал сетью Петри работу параллельных процессов. Под Windows GUI в 99 г. Аккурат через шесть лет после окончания института. Удобная штука, но на бумаге сложную сетку рисовать сложновато. Лучше тулзы подыскать.

BB>Заранее спасибо за ответы.

... << RSDN@Home 1.1.3 stable >>
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[2]: Теория вычислительных процессов
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 11.10.04 07:17
Оценка: 8 (1) +1
Здравствуйте, bugmaker, Вы много чего писали и закончили так:

B>вывод:

B>если вы просто программист, то знание всего того, что вы перечислили, рынок труда не требует
B>но если вы настоящий (!) математик, то какое вам вообще дело до рынка труда и его требований

Неправильный вывод. К тому же, по сомнительно-репрезентативной выборке. ТВП — очень полезная вещь и немалая часть того самого кода:
B>1. "какой мудак и какой пяткой писал этот код??!!"
написана теми, кто про сеть Петри с её фишками даже не слыхал или считал её сугубо академическим развлечением. Потому и написали через одно место, как правило — с запереподстраховками. А эта тема всплывает как только в процессе нужно пройти больше 2-3 вложенных обращений к разделяемым ресурсам. Или когда нужно откопать наиболее простую схему семафоров.
... << RSDN@Home 1.1.3 stable >>
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[4]: Теория вычислительных процессов
От: Quintanar Россия  
Дата: 11.10.04 07:41
Оценка: 57 (4) +1
Здравствуйте, StanislavK, Вы писали:

SK>Это все "бла-бла-бла", пустые слова. Но желание защитить честь 5-ти, а то и 8-9-ти, потраченых лет, конечно похвально. В прикладном программированиии таких проблем нет. Более абстрактных взгляд на проблему тут не при чем. Преподы, которые к реальным задачам чаще всего отношения не имеют или работают в условиях далеких от коммерческих не могут правильно подать материал, да и не хотят. Им более интерестно "заниматься наукой".


Ну кто-кто может быть и потратил эти 5 лет, а я лично так не считаю. Преподы делают, то что должны делать, обучают теоретическим основам, изучение того, что нужно на практике, можно проводить самостоятельно или на дополнительных курсах.
Вот, что несомненно часто встречается на практике:
1)оценки сложности алгоритмов
2)работа со сложными структурами данных, типа списка, где нужно понимать их преимущества и недостатки.
3)тоже лябда-исчисление в скрытом виде, от которого идут извращения с шаблонами в С++ и я подозреваю некоторые идеи в BOOST.
4)иногда элементарные знания о формальных грамматиках, если нужно что-то распарсить.
...


SK>То, что дают в институте — это одно, а практика совершено другое и эти вещи почти не пересекаются. Надуюсь, что ситуацию будет изменяться к лучшему. Но года 3-4 назад все было так как я говорю и я уверен, что к лучшему наше образование не сильно сдивинулось. Математиков у нас готовят, но программистов — нет.


А где, интересно, должны готовить программистов? Изучение конкретных языков и технологий — это, извините, уровень ПТУ, хотя и продвинутого, максимум технического института. Все это легко выучить и самостоятельно без всяких профессоров и прочих доцентов. А теорию даже простую типа теории алгоритмов, структур данных, теорию автоматов, формальных языков, построения компиляторов, лямбда исчисление, логику, дискретную математику, я так понимаю, вы относите к тому, что на практике не нужно. Ну так это у кого какая практика
В институте/университете не вас учат, а вы сами учитесь. Можно бессмысленно пропинать все 5 лет даже в лучших вузах, а можно использовать это время с пользой для себя, изучив по ходу дела, если на то пошло, Java там или C#.
Re[4]: Теория вычислительных процессов
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 11.10.04 07:54
Оценка:
Здравствуйте, StanislavK, Вы писали:

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


SK>Это все "бла-бла-бла", пустые слова. Но желание защитить честь 5-ти, а то и 8-9-ти, потраченых лет, конечно похвально.

Да ладно тебе! Правильно всё Quintanar говорит. Кто-то же должен трансформировать одни коммерческие условия в другие

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

Что есть "правильная" подача материала? Пусть изучают конкретные технологии на факультативных курсах и в рамках НИСР. А "теория" из серии "взять компонент quicksort для быстрой сортировки" — бред и вздор.

SK>То, что дают в институте — это одно, а практика совершено другое и эти вещи почти не пересекаются.

Ещё как пересекаются, если не бояться пересекать.

SK> Надуюсь, что ситуацию будет изменяться к лучшему. Но года 3-4 назад все было так как я говорю и я уверен, что к лучшему наше образование не сильно сдивинулось. Математиков у нас готовят, но программистов — нет.

Ладно, не переживай ты так сильно. Ща вот на модульное обрзование перейдём и будут нам ещё и профессора J2EE, и аспиранты .Net, и дипломы из серии "изучение принципов работы системы <нужное вписать> производства <вписать>".

SK>Исключения, конесно, есть всегда. Если есть положительные прецеденты — поделитесь.

А что ты называешь положительным прецедентом?
... << RSDN@Home 1.1.3 stable >>
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[3]: Теория вычислительных процессов
От: bugmaker  
Дата: 11.10.04 07:55
Оценка: 1 (1)
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>Здравствуйте, bugmaker, Вы много чего писали и закончили так:


B>>вывод:

B>>если вы просто программист, то знание всего того, что вы перечислили, рынок труда не требует
B>>но если вы настоящий (!) математик, то какое вам вообще дело до рынка труда и его требований

ГВ>Неправильный вывод. К тому же, по сомнительно-репрезентативной выборке. ТВП — очень полезная вещь и немалая часть того самого кода:

B>>1. "какой мудак и какой пяткой писал этот код??!!"
ГВ>написана теми, кто про сеть Петри с её фишками даже не слыхал или считал её сугубо академическим развлечением. Потому и написали через одно место, как правило — с запереподстраховками. А эта тема всплывает как только в процессе нужно пройти больше 2-3 вложенных обращений к разделяемым ресурсам. Или когда нужно откопать наиболее простую схему семафоров.

поскольку я о сетях Петри ничего не слышал, а если слышал, то давно уже забыл, а между тем многопоточные приклады писал, то подозреваю, что многое в математике я изобрел заново
нужно как нибудь почитать учебники и проверить это предположение
Re[5]: Теория вычислительных процессов
От: StanislavK Великобритания  
Дата: 11.10.04 08:25
Оценка: -7
Здравствуйте, Quintanar, Вы писали:

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


Q>Ну кто-кто может быть и потратил эти 5 лет, а я лично так не считаю. Преподы делают, то что должны делать, обучают теоретическим основам, изучение того, что нужно на практике, можно проводить самостоятельно или на дополнительных курсах.

Q>Вот, что несомненно часто встречается на практике:
Q>1)оценки сложности алгоритмов
Q>2)работа со сложными структурами данных, типа списка, где нужно понимать их преимущества и недостатки.
Q>3)тоже лябда-исчисление в скрытом виде, от которого идут извращения с шаблонами в С++ и я подозреваю некоторые идеи в BOOST.
Q>4)иногда элементарные знания о формальных грамматиках, если нужно что-то распарсить.
Q>...

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

Q>А где, интересно, должны готовить программистов? Изучение конкретных языков и технологий — это, извините, уровень ПТУ, хотя и продвинутого, максимум технического института. Все это легко выучить и самостоятельно без всяких профессоров и прочих доцентов. А теорию даже простую типа теории алгоритмов, структур данных, теорию автоматов, формальных языков, построения компиляторов, лямбда исчисление, логику, дискретную математику, я так понимаю, вы относите к тому, что на практике не нужно. Ну так это у кого какая практика

Q>В институте/университете не вас учат, а вы сами учитесь. Можно бессмысленно пропинать все 5 лет даже в лучших вузах, а можно использовать это время с пользой для себя, изучив по ходу дела, если на то пошло, Java там или C#.

Где должны учить? Там и должны. Но не учат
А то, что на практике это не нужно — правда. Хотя, вру, конечно, есть люди, которые это используют, но их мало и к программированию, как понимаю его я, это отношения не имеет. Программист должен знать как быстро и качественно создать систему и не погибнуть под ее сложностью.
То, что образование надо, я не спорю. Но не для получения знаний, а просто для развития. Знания же , по большей части, студенты получают бесполезные и это обидно.
Re[4]: Теория вычислительных процессов
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 11.10.04 09:01
Оценка:
Здравствуйте, StanislavK, Вы писали:

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


SK>Это все "бла-бла-бла", пустые слова. Но желание защитить честь 5-ти, а то и 8-9-ти, потраченых лет, конечно похвально.

Да ладно тебе! Правильно всё Quintanar говорит. Кто-то же должен трансформировать одни коммерческие условия в другие

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

Что есть "правильная" подача материала? Пусть изучают конкретные технологии на факультативных курсах и в рамках НИСР. А "теория" из серии "взять компонент quicksort для быстрой сортировки" — бред и вздор.

SK>То, что дают в институте — это одно, а практика совершено другое и эти вещи почти не пересекаются.

Ещё как пересекаются, если не бояться пересекать.

SK> Надуюсь, что ситуацию будет изменяться к лучшему. Но года 3-4 назад все было так как я говорю и я уверен, что к лучшему наше образование не сильно сдивинулось. Математиков у нас готовят, но программистов — нет.

Ладно, не переживай ты так сильно. Ща вот на модульное обрзование перейдём и будут нам ещё и профессора J2EE, и аспиранты .Net, и дипломы из серии "изучение принципов работы системы <нужное вписать> производства <вписать>".

SK>Исключения, конесно, есть всегда. Если есть положительные прецеденты — поделитесь.

А что ты называешь положительным прецедентом?
... << RSDN@Home 1.1.3 stable >>
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[5]: Теория вычислительных процессов
От: StanislavK Великобритания  
Дата: 11.10.04 11:29
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

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


SK>>Это все "бла-бла-бла", пустые слова. Но желание защитить честь 5-ти, а то и 8-9-ти, потраченых лет, конечно похвально.

ГВ>Да ладно тебе! Правильно всё Quintanar говорит. Кто-то же должен трансформировать одни коммерческие условия в другие

Вот тут поподробнее. Я не понял/

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

ГВ>Что есть "правильная" подача материала? Пусть изучают конкретные технологии на факультативных курсах и в рамках НИСР. А "теория" из серии "взять компонент quicksort для быстрой сортировки" — бред и вздор.

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

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

SK>>То, что дают в институте — это одно, а практика совершено другое и эти вещи почти не пересекаются.

ГВ>Ещё как пересекаются, если не бояться пересекать.
Не боюсь

SK>> Надуюсь, что ситуацию будет изменяться к лучшему. Но года 3-4 назад все было так как я говорю и я уверен, что к лучшему наше образование не сильно сдивинулось. Математиков у нас готовят, но программистов — нет.

ГВ>Ладно, не переживай ты так сильно. Ща вот на модульное обрзование перейдём и будут нам ещё и профессора J2EE, и аспиранты .Net, и дипломы из серии "изучение принципов работы системы <нужное вписать> производства <вписать>".
Надеюсь. Но мне кажется, что у нас так все инертно, что не дождемся

SK>>Исключения, конесно, есть всегда. Если есть положительные прецеденты — поделитесь.

ГВ>А что ты называешь положительным прецедентом?
ВУЗы, где учат программировать.
Теория применения мозгов
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 12.10.04 01:01
Оценка: 143 (11) :)
Здравствуйте, StanislavK, Вы писали:

SK>>>Это все "бла-бла-бла", пустые слова. Но желание защитить честь 5-ти, а то и 8-9-ти, потраченых лет, конечно похвально.

ГВ>>Да ладно тебе! Правильно всё Quintanar говорит. Кто-то же должен трансформировать одни коммерческие условия в другие

SK>Вот тут поподробнее. Я не понял/

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

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

ГВ>>Что есть "правильная" подача материала? Пусть изучают конкретные технологии на факультативных курсах и в рамках НИСР. А "теория" из серии "взять компонент quicksort для быстрой сортировки" — бред и вздор.

SK>Надо давать концепции и подход к разработке. Пусть народ знает, какие есть методологии, почему они такие, паттерны пусть изучают и учатся применять, пусть изучать основные типы программирования, главное, что пусть работают, делают проекты. А ваще, я не задумывался над этим, думаю, это отдельная долгая тема...


Ну вот видишь — не задумывался, а требуешь реорганизации. Как тебе не ай-яй-яй. Тут такой момент, что на самом деле сама модель "максимально быстрой разработки, распараллеленой по обезъянам", или же модель "программной фабрики" давно, сильно и далеко не без оснований подвергалась остракизму со стороны ммм... так скажем, не самых последних умов. Бодуэн и Мейер её хорошо честили (французы, одно слово! ). Правда, это было в 78 г. Но это — правильно.

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


Ничем она не отличается от "странных абстрактных решений". Только композицией этих самых решений. Хотя впрочем нет, есть пара отлиий: требуется подойти к интеллектуальному труду как к механическому, плюнуть на надёжность, удобство и функциональную целостность во имя того, чтобы что-то сунуть под нос заказчику! Вот только не говорите мне, плз., что подобному очковтирательству (это именно так называется. старый добрый советский термин. сейчас называется терминами RUP или XP) и головотяпству должны учить в вузах. А то, что демонстрируют тебе выпускники — это правильнейший из правильнейших подходов: сначала подумать, понять, а потом — сделать. И учили их как раз структуризации понимания и прививали модели, которыми надо научиться оперировать. Только не говори мне, что "поиск подходящего компонента" может стать такой моделью. Это а) ещё 20 лет назад уже на втором курсе проходили, "модульное программирование" называется и б) автоматически прививается всем вузовским курсом. Приятель, да они работают во всю мощь, а ты, хулиган, — носом крутишь! Тот факт, что ты кроме "рациональных" и "простых" решений не можешь выделить абстрактных моделей, которыми эти решения дополняются и оттачиваются говорит на самом деле очень далеко не в твою пользу.

Хотя, справедливости ради нужно заметить, что програмирование, на самом деле и творческое, и вместе с тем, — довольно паскудное занятие. Если автомобиль на квадратных колёсах попросту не поедет или не будет востребован, то программа с периодичностью падения 2 раза в день вполне может быть "впарена" маркетологами. У неё будет у$бищная архитектура, кривейший API, но все шефы будут как зомби утверждать, что это — "правильно". Знаешь, что я думаю? Что надо специальные курсы программирования и СПО для всех юзеров открывать — чтобы те отличали незабудку от дерьма, и понимали, что то, с чем они в подавляющем большинстве случаев работают, с точки зрения честных инженеров называется простым русским словом: "говно". А то, что пользователи с подачи продавцов воспринимают как непреодолимые трудности — суть не более, чем плод лени и тупости (тоже лень, только мозговая). Это, кстати, к вопросу о трансформации коммерческого контекста.

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


Правильно! Потому что интеллект (то самое, что якобы требуется большинству работодателей) на самом деле у них пашет вхолостую. Напрочь вхолостую! И очень многие руководители ни черта не сделают для того, чтобы им воспользоваться. Машина, раскрученная вузом тупо тормозится этим, как его... а, вспомнил, — "производством"! "Оставь мозги... нам нужна только твоя способность к запоминанию". Разумеется — у нас же есть "процесс", который "правильный", есть "компоненты", которые "уже придуманы". Что тут думать!? Пили, студент! Складывай кубики в пирамиду, да побыстрее! Дружок, инженеров обучают в вузах правилам оформления документов (чертежей), инженеров ИТ должны обучить в первую очередь только думать и выделять цельные непротиворечивые абстракции! Это и есть наш язык. Всё! И ещё — не путать Ахо и Ульмана с Доном Боксом. Отсюда появляется и "чистый" код и багоустойчивые программы. Только отсюда, а не из правил поведения в коллективе и соглашений о кодировании. Очень жаль, если ты этого не знаешь или хуже того — даже не понимаешь.

Или у тебя проблема, что ты не можешь с ними общаться на одном языке? Так это уж только твоё начинающееся мозговое окостенение говорит. (Извини за некоторый сарказм. )

SK>И таких я не одного видел.


Аналогично. Навскиду он сможет оценивать сроки не сразу. Точно также, как, скорее всего, этому не сразу научился ты. Да и я. Да и все прочие, вероятно. Потому-то методики "оценки сложности" как-то взяли да тихо подохли. Оценка сроков — просто навык. К тому же — индивидуальный.

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

<отступление>
Знаешь, кстати, когда он у меня начал формироваться? Когда я свои курсовики писал за три дня перед сессией вместо положенного семестра. ИМХО, это было процентов 80 необходимого навыка оценки сроков, около 60 — навыка поиска информации и под 70 — общения с пользователями (адреналина меньше). И когда я уже попал в "реальный коммерческий контекст" мне удивляться было попросту нечему. Хотя тогда и компонетного идиотизма в такой степени как сейчас — не было. Кроме того, сдавать программку преподавателю, который не примет её падающей или же пользователю, который поступит также — однофигственно. Что нарваться на э... непонимание однокашников, если продинамил свою часть общего курсовика, что сорвать план работы группы. Кстати, что преподавателя можно уговорить сдать ему программу после сессии, что пользователя — согласиться на доработки после формального подписания акта приёма-передачи. Аналогия прозрачна, не находишь? Кстати, навеяна вполне конкретными "академическими" реалиями. И это нам ещё Waterfall не преподавли как "дисциплину". Или может, преподавали, да я прогулял.

— Сколько вам нужно времени на освоение китайского?
— А когда экзамен?

Зато я потерял кое-что другое, что потом пришлось навёрстывать спустя несколько лет после окончания того же института. Те же самые сети Петри и понимание формальных грамматик. Но! Я хотя бы знал — где искать. По названиям. И ещё, кстати, я обнаружил у себя сильную нехватку образования по:

— психологии (чтобы общаться с пользователями, руководителями и подчинёнными);
— лингвистике (чтобы разбираться в творениях ответственных за постановку задачи);
— риторике (очень жаль, что этого курса у нас не было);
— истории религий (важнейшая вещь в нашем деле!);
— просто систематической истории (очень полезно);
— литературе (ну ка, догадайся, для чего это нужно?);
— экономике (расшифровать необходимость?);
— философии ( ).

Правда, я ума не приложу, как бы это всё можно было впихнуть в мою голову в 20 лет.

А вот знания RUP и прочей белибердени если и нужны были, то влёт перефразировались из Буча, Коада или Шлеера. Усё! Ото и вся академика туточки. А универсальное знание пока звучит так: "Если искать кратчайший путь в графе, перемещаясь в ближайшую вершину, то не всегда итоговый путь будет кратчайшим из возможных". Убийственная вещь для "итеративного процесса" в тупом его понимании! Туда ему и дорога!
</отступление>

Так что, ИМХО, ты демонстрируешь слегка перевёрнутое на 180 градусов понимание вещей. Вернее — дальше носа и не смотришь.

SK>>>То, что дают в институте — это одно, а практика совершено другое и эти вещи почти не пересекаются.

ГВ>>Ещё как пересекаются, если не бояться пересекать.
SK>Не боюсь

Имеешь ввиду то, что набираешь на работу студентов и вчерашних дипломников? Ну — за сие мой тебе респект.

SK>>> Надуюсь, что ситуацию будет изменяться к лучшему. Но года 3-4 назад все было так как я говорю и я уверен, что к лучшему наше образование не сильно сдивинулось. Математиков у нас готовят, но программистов — нет.

ГВ>>Ладно, не переживай ты так сильно. Ща вот на модульное обрзование перейдём и будут нам ещё и профессора J2EE, и аспиранты .Net, и дипломы из серии "изучение принципов работы системы <нужное вписать> производства <вписать>".
SK>Надеюсь. Но мне кажется, что у нас так все инертно, что не дождемся

К счастью, у нас всё именно так инертно. Просто ты ещё своего щ-щастя не понимаешь. Пойми, что Windows, Unix (а равно и OS/360, и сети ALOHA, и всяческие протоколы) — это не более чем иллюстрация к теории, а не сама теория. А объект синхронизации, как ты его не назови, а почти всегда можно свести к понятию семафора. Кстати, можешь что-нибудь сказать об алгоритме предсказания блокировок? Базовый курс системного програмирования, 3-й курс вуза.

SK>>>Исключения, конесно, есть всегда. Если есть положительные прецеденты — поделитесь.

ГВ>>А что ты называешь положительным прецедентом?
SK>ВУЗы, где учат программировать.

Да, были такие в советские времена. УПК ещё назывались. Специальность: "оператор ЭВМ". Ну и что, это — тербуемое тебе учебное заведение? Если так, то ты явно перепутал объект, к которому собираешься предъявлять требования. Понимаешь ли, это не студенты из перевёрнутого мира к тебе пришли. Это мы (ты, и я, кстати, тоже) в нём живём и делаем вид, что "работаем". Вот так-то.
... << RSDN@Home 1.1.3 stable >>
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[4]: Теория вычислительных процессов
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 12.10.04 01:01
Оценка:
Здравствуйте, bugmaker, Вы писали:

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

B>нужно как нибудь почитать учебники и проверить это предположение
ИМХО, если и слышал — то уже не забыл.
... << RSDN@Home 1.1.3 stable >>
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re: Теория применения мозгов
От: StanislavK Великобритания  
Дата: 12.10.04 07:19
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

Очень много пишешь — я столько не могу. Я просто хочу сказать, что сухой факт остается фактом — человек после вуза, учившийся на создателя информационных систем таковым не явлется из-за того, что там его этому не учили. Он не знает ООП, не умеет писать программы, не понимает того, что хочет заказчик. Большинство выпускников — дешевая рабочая сила, которую надо учить снова. Попадаются, естественно, и очень талантливые люди, но ВУЗ к этому отношения не имеет.

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

Уже слышу "фи" — "как это, работадателю?! А где полет мысли, интеллект, искусство?". Это все после, точнее не после, это очень важно, но при наличии других составляющих — понимания того, что надо сделать, отсутвтия псевдо-научных амбиций. А исскуство в этой профессии, на мой взгляд, это сложный поиск компромисов и правильных решений.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.