gifts2017

История программирования: Дейкстра. И Брукс.

Опубликовал Александр Рытов (Арчибальд) в раздел Программирование - Теория программирования

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

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

Подборка работ здесь http://khpi-iip.mipk.kharkiv.edu/library/extent/dijkstra/

А вот одно из высказываний:

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

06.07.2010

Обсуждение слегка сместилось в сторону программных проектов. Прикреплю-ка я бестселлер Брукса-младшего на эту тему...

26.09.2011.

Наткнулся на форуме на обсуждение преимуществ/недостатков РАУЗ. Цитирую:

Начиная с релиза 1.2.15 в УПП и в «Комплексной автоматизации», далее по тексту КА, реализован новый механизм учета затрат: «Расширенная аналитика учета затрат», далее по тексту – РАУЗ. С этого времени, несмотря на поддержку «традиционного учета», исправляются ошибки, если вдруг они обнаружены, все развитие функционала проходит только с использованием РАУЗ, поэтому, рано или поздно, встает вопрос о переходе на новый механизм учета.

Расширенная аналитика учета затрат – это новая (альтернативная) модель учета по следующим участкам: складской учет, учет затрат, учет выпуска и учет себестоимости, расчет себестоимости. Возникновение этого механизма связано с унификацией учета затрат и учета запасов. Одна из ключевых идей РАУЗ – единый взгляд на учет затрат и запасов...

Должен заметить, что эта "новая" модель - всего лишь одна из возможных моделей, причем весьма громоздкая. Дейкстра (в контексте размышлений о полноте тестирования) приводил такой пример:

Предположим, в неком государстве имеется чрезвычайно запутанное налоговое законодательство, и из-за этой запутанности невозможно протестировать программу расчета налогов. Есть выход: объявить эту программу налоговым законом в последней инстанции, тогда и тестировать ничего не надо.

Вот и с РАУЗ так: не будем разбираться, объявим вычисляемую ей себестоимость "настоящей". Только хорошо ли это?

Скачать файлы

Наименование Файл Версия Размер
Мифический человеко-месяц 134
.zip 401,85Kb
07.07.10
134
.zip 401,85Kb Скачать

См. также

Подписаться Добавить вознаграждение
Комментарии
1. Александр Рытов (Арчибальд) 05.07.10 12:00
Если вам нужны более эффективные программисты, вы обнаружите, что они не должны растрачивать свое время на отладку, - они с самого начала не должны вносить ошибки в программы.
2. Владислав Чинючин (vcv) 05.07.10 12:21
Миллион плюсов. Молодежь должна знать основоположников. Хотя бы по фамилиям.
3. Александр Шишкин (Шёпот теней) 05.07.10 12:47
... написать программу в 10 строк может каждый
... написать программу в 100 строк может подготовленный пользователь
... написать программу в 1 000 строк может программист
... написать программу в 10 000 строк может гений

... ВОТ ...

п.с. программист это не тот кто знает "КАК" а то кто знает "ПОЧЕМУ" ...

...
4. Александр Шишкин (Шёпот теней) 05.07.10 12:51
(1) ...

1.естьпрограммисты "холерики" - им не трудно двадцать раз всЁ переписать ...
2.естьпрограммисты "флегматики" - им не трудно двадцать раз всЁ подумать ...

... первые создают образ у которых "ничего не работает" ...
... вторые что они "ничего не делют" ...

... вот ...
5. Александр Рытов (Арчибальд) 05.07.10 12:56
(3)
Задача Университета - не предлагать то, что просит общество, а давать то, что обществу необходимо. © Дейкстра
У программиста (особенно, одноэсника) задача такая же...
6. Александр Шишкин (Шёпот теней) 05.07.10 13:08
(5) ... вопрос "что обществу необходимо" ... да и судьи кто ? становится интересным ...

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

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

нельзя помогать "бедным" и показывать Дом-2 ...

... если высшее образование способен получить или купить ЛЮБОЙ - то что это за ОБраЗОвание ... ??? и что это за УНИВЕРситеты котрые дают/продают ТАкоЕ образование ... ???

... вот ...
7. Ирина Пятакова (Alraune) 05.07.10 13:15
(6)
если высшее образование способен получить или купить ЛЮБОЙ

Имеете в виду само высшее образование или диплом?
8. Александр Шишкин (Шёпот теней) 05.07.10 13:28
(7) ... ты, что смЕЕЕшься ... ? ... !

... типа "те" кто учится - получают "реальные" знания ... что ли ...?

... уровень образования в ЭрЭфии упал ... разве это кому-нибудь "не видно" ... ???

... мой опыт в четыре года преподавния в школе и институте говорит об "ужасном" положении нашего будущего инженерного положения ...

... вот ...
9. Александр Шишкин (Шёпот теней) 05.07.10 13:31
и потом если диплом (любым образом полученным) даёт вам право заниматься "строительством мостов" то о чЁм должно думать общество ... ???

может поэтому у нас рушаться крыши, горят здания, не летают "булавы" и всЁ остальное ... вот ...
10. Александр Рытов (Арчибальд) 05.07.10 13:32
На наше формирование большое влияние оказывают инструменты, которые мы используем, в частности: формализмы, которые мы используем, формируют наш образ мышления лучшим или худшим образом, и это значит, что мы должны быть чрезвычайно осторожны в выборе того, чему учить и чему учиться, потому что разучиться потом совершенно невозможно. © Дейкстра

11. Александр Шишкин (Шёпот теней) 05.07.10 13:48
(10) ... всегда есть не только культура но ещЁ и традиция ... а если мы касаемся обучения и традиции то лучше "нашего" Ушинского ... ! ...

Константин Дмитриевич УШИНСКИЙ

родился 19 февраля (2 марта) 1824 года в Туле в семье Дмитрия Григорьевича Ушинского — отставного офицера, участника Отечественной войны 1812 года, мелкопоместного дворянина.


Педагогика - не наука, а искусство: наука изучает существующее или существовавшее, а искусство стремится творить то, чего еще нет. Всякое искусство имеет свою теорию, которая предписывает правила для практической деятельности, черпая основания для этих правил в науке. Джон Стюарт Милль: "Где говорят в правилах и наставлениях, а не в утверждениях относительно фактов, там искусство... Положения искусства не утверждают, что что-нибудь есть, но указывают на то, что должно быть" . Ясно, что в таком смысле ни политику, ни педагогику нельзя назвать науками; ибо они не изучают того, что есть, но только указывают на то, что было бы желательно видеть существующим, и на средства к достижению желаемого. Поэтому педагогика - искусство, а не наука воспитания.

.. можно добавить и искусство программировать ...

... ВОТтакаяОНАэтаРОССИЯ ...
12. Игорь Исхаков (Ish_2) 05.07.10 13:55
Какова ,однако, реакция на невинное "Рисуешься ?".
Бесспорно , ответный залп получился .
13. Александр Рытов (Арчибальд) 05.07.10 14:04
(12)
Наиболее важными активами компетентного программиста являются - возможно, именно в таком порядке - отличное мастерство в своем естественном языке и значительная математическая зрелость. Уже более десяти лет эти факты общеизвестны и общепонятны.
19 September 1980
prof. dr. Edsger W. Dijkstra

Видишь, какой оптимист! Мне же захотелось, чтобы эти факты из "общепонятных" превратились в "понятные ИСовцам". :|
14. Игорь Исхаков (Ish_2) 05.07.10 14:17
Слушай , куда жаловаться ?
Дейкстра жестоко не прав в своем выборе из альтернатив :

Взгляд А: Программирование в основном весьма просто.
Взгляд В: Программирование - это очень сложно.

Если вложить в "программирование" узкий смысл - то массовое появление программистов 1с-ников - не это ли подтверждение взгляда А.
Взгляд же B тоже симпатичен , но понять в ЧЕМ эта сложность могут совсем немногие.
Лучше быть поближе к народу :
Взгляд А преобладает , и поэтому выгоднее и практичнее его считать верным.


15. Игорь Исхаков (Ish_2) 05.07.10 14:24
(13) Опять я не согласен :
Я бы оставил только
"отличное мастерство в своем естественном языке" .
Нынче "математическая зрелость"важна уж очень в узкой сфере ( в области 1с-программирования - точно нет).
А вот умение поставить задачу ,"ловко выкрутиться" поможет в любой сфере и при любой власти.
16. Александр Шишкин (Шёпот теней) 05.07.10 14:25
... массовость убивает талант ...
... уровень компетенции с ростом организации (программы) падает ....
... в десяти строках программы всегда есть хотя бы одна ошибка ...
... один Эс это не программа стандартов решения а программа универсальных методов использования ... а универсальность - враг качества ....

написать программу под жёсткое выполнение "просто" - написать програму с проверкой на перекрещивающиеся ошибки архи "сложно" ...

... ужжжВОТужжж ...
17. Игорь Исхаков (Ish_2) 05.07.10 14:42
Вообщем , Арчибальд, ты смущаешь своими цитатами от 1980 г. неокрепшие умы.
30 лет прошло.
Умничая из сегодняшнего дня , можно сказать и "Браво" и "Старо !".
http://khpi-iip.mipk.kharkiv.edu/library/extent/dijkstra/pp/ewd540.html
18. Александр Рытов (Арчибальд) 05.07.10 14:59
(17) Вот тебе посвежее, и, судя по (14), ближе по духу:
В нынешней политической ситуации непохоже, чтобы что-то улучшилось вскоре; в ближайшем будущем нам придется жить среди предрассудков, что программирование - это "настолько просто, что им могут заниматься даже члены республиканской партии".

Остин, 26 августа 1995
Prof. dr. Edsger W. Dijkstra


19. Александр Шишкин (Шёпот теней) 05.07.10 15:13
(17) ... молодости свойственно "не желание нового" т.к. она не знает ни "его" ни даже "направления" ... она, в основном, "тупо" отрицает "старое" ...

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

... во ... во ... что-то проблемы с этим вот "построить" ...

... ВоооТ ...
20. Игорь Исхаков (Ish_2) 05.07.10 15:32
(18) Хм... Прошло 15 лет с 1980г. и Дейкстра через иронию признал течение жизни :
Вся сила - во взгляде А.
Нравится - не нравится ? - не тот вопрос. Это - ПРОГРЕСС во всей его красе.

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

Сравним ?

Взгляд А: Программирование в основном весьма просто.
Взгляд В: Программирование - это очень сложно.

Взгляд С: Лицедейство в основном весьма просто.
Взгляд D: Лицедейство - это очень сложно.

Взгляд E: Обработка металлов в основном весьма просто.
Взгляд F: Обработка металлов - это очень сложно.

И глубокомыслие Дейкстры при обосновании взгляда B для читателя сводится к простой народной истине :
Всяк кулик своё болото хвалит.
Светлый ум; +1 Ответить 2
21. Александр Шишкин (Шёпот теней) 05.07.10 15:50
(20) ... ты слишком "личностно" а значит НЕобЪективно т.е. СУБЪективно воспринял его наставления ...

... эх ... молодость ... молодость ... молодость ...

... "создавать" надо а "не отрицать" ... когда дети начинают СОздавать они лучше понимают отцов ...

... вот ...
22. Игорь Исхаков (Ish_2) 05.07.10 15:55
(21) Субъективность (читай- полемическая заостренность) бывает полезна для приближения к объективности.
Считай , что это провокация. Провокация к мысли.
23. Александр Рытов (Арчибальд) 05.07.10 16:09
(20)
Необходимые приемы эффективного доказательства достаточно формальны, но до тех пор, пока программированием занимаются люди, не владеющие ими, кризис программного обеспечения будет продолжать пребывать с нами и будет рассматриваться как неизлечимая болезнь. А вы знаете, что делают неизлечимые болезни: они приводят к появлению знахарей и шарлатанов, которые в данном случае принимают личину Гуру Программирования.
24. Александр Шишкин (Шёпот теней) 05.07.10 16:11
... провокация это понятно ... а вот с мыслью не совсем ...

как можно спорить с "человеком-практиком" ... т.к. "как написать программу знаЮт все" ... многие знают синтаксис и правил языка программирования ... а вот "написать" программу ? которая выполняет возложенные на неё функции ... ? и чем она разветвлЁннее тем меньше способных ...

... вот ...

... твоя провокация ... как впрочем и почти все остальные - это провокация не "за" и не "против" а просто "отрицание" ...

25. Игорь Исхаков (Ish_2) 05.07.10 16:26
(23) Отсюда вытекает ,
что тот самый ПРОГРЕСС - есть не что иное как развитие кризиса.
Кризиса понимания как неизлечимой болезни ПРОГРЕССА.

Спустимся на грешную землю.
Разбираю текст чужой программы (клиент -серверный вариант).
По модулю разбросаны обращения к реквизитам справочника через точку . Есть они и внутри циклов.
И я подумал : вот он кризис понимания (читай, ПРОГРЕСС). Здесь и сейчас.
26. Александр Шишкин (Шёпот теней) 05.07.10 16:49

... программа - это, прежде всего, то что "работает" ... остальное дело вкуса, знаний, культуры ... и... ? ... утверждений ГУРУ ... вот ... (сам же сказал в своих провокациях) ...

... вотПРОВОКАЦИЯвот ...
27. Валерий Дубовой (Valerich) 05.07.10 17:01
Мораль этой истории - в том, что, конечно, мы должны быть очень осторожны, давая советы молодежи: иногда они следуют им!


очень глубокая мысль.... особенно если вдуматься
28. A.Y 06.07.10 07:05
значит я не сумасшедший! это радует )))
29. Александр Рытов (Арчибальд) 06.07.10 07:08
(28) Вот с этого места поподробней, пожалуйста :?:
30. Александр Шишкин (Шёпот теней) 06.07.10 08:07
(27) ... ВалерычЪ ... мне понравилась твоя "мысль" ... интересно а "какую" идею ты вложил в неЁ ... ? ... вот ...

ответственность и общества и учителя ... ! ... поэтому я Ушинского и упоминаю ... в том же контексте и ссылку приводит Арчи, как я понял, о "чему должны учить университеты" ... вот ...
31. Валерий Дубовой (Valerich) 06.07.10 08:14
(30) Есть такой закон Мэрфи (или следствие из него, не помню)....
Все что может быть понято неправильно, обязательно будет понято неправильно.....

поэтому советуя что-то молодым и начинающим надо думать что говоришь, иначе можно получить интересные эффекты и винить будт некого, кроме самого себя.... :)
32. A.Y 06.07.10 08:23
(29) ну просто мне все в части ИТ кажется очень простым )))
при том что все вокруг все усложняют и говорят что это все нириально сложно.
и я долго думал что это проблема во мне, что это мои глюки ))
а оказывается Дейкстра также считает ))

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

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

и одну систему затюнинговал до того, что она сейчас кроме ИТ-услуг, может поддерживать бухгалтерские услуги и технологии управления качеством по ИСО 9000.

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

причем тюнинг касался лишь данных. программирование и метаданные оставил в сторонке. сейчас система выдает показатели по ИТ, стабильность, затраты, динамика, планирование и осуществление различных улучшений, контроль специалистов, действий, сроков. в общем вся картинка по ИТ, админам и программистам, в разрезе по 30 заказчикам )
33. Александр Шишкин (Шёпот теней) 06.07.10 08:27
(31) ... для того чтобы быть "однозначно" понятым человечество придумало "грамотность" (в кавычках потому, что имеется ввиду не только правильное написание но и правильное использование слов как определений) ...

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

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

... такоеВОТмнение ...
34. Александр Шишкин (Шёпот теней) 06.07.10 08:31
(32) ... повторюсь из (5) :

... написать программу в 10 строк может каждый
... написать программу в 100 строк может подготовленный пользователь
... написать программу в 1 000 строк может программист
... написать программу в 10 000 строк может гений

... ВОТ ...

п.с. программист это не тот кто знает "КАК" а то кто знает "ПОЧЕМУ" ...

...

написать программу "чтобы работало" не сложно ... написать программу на "дурака" - очень сложно ... 1С пишет универсально - а ЭТО ещё сложнее ...

... вот МОЁмнение ...
35. Александр Рытов (Арчибальд) 06.07.10 08:34
(30) Применительно к сабжу. Дейкстра всегда считал одной из причин кризиса неразберихи в программах то, что машины Фон Неймановского типа позволяют изменять программный код так же, как и данные. Например, формировать текст запроса в зависимости от неких условий - это зло. Не говоря уже о #ЗагрузитьИзФайла 8-)
Шёпот теней; +1 Ответить 1
36. A.Y 06.07.10 08:35
(33) Мы говорим одни слова на этом свете, но видим разное кино...
(с) http://polonium194.livejournal.com/52256.html
37. A.Y 06.07.10 08:37
(35) Меня тоже программисты боятся )))
38. Валерий Дубовой (Valerich) 06.07.10 08:40
(34)
написать программу "чтобы работало" не сложно ... написать программу на "дурака" - очень сложно

100% согласен. при этом просто программы не пишутся никогда, поскольку пишем для "дураков".... иногда доходит до маразма....

1С пишет универсально - а ЭТО ещё сложнее

я бы уточнил - ПЫТАЮТСЯ писать универсально. Дело усложняется тем, что они оторваны от реалий жизни.... и пишут похоже подмастрья, а не мастра...
39. A.Y 06.07.10 08:41
(34) а причем тут программки и ИТ?
я говорю немного о другом уровне. там где нужна простата и управляемость.
это как BMW. создать не убиваемые движки могут только лучшие инженеры и специалисты, но для водителя все должно быть просто и управляемо.

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

по сути я сейчас занимаюсь дизайном приборных панелей и салонов для пользователей и руководителей. смотрю чтобы им было удобно, понятно и комфортно.
движки собирать тоже могу, но не так хорошо как специалисты, просто имею представление и если нужно соберу что то пыхтящее и жужащее.
сборку движков передаем специалистам. себе оставив только функции перевода и управления.
CheBurator; Шёпот теней; +2 Ответить 3
40. Александр Шишкин (Шёпот теней) 06.07.10 08:46
(39) ... чтобы сделать то что ВЫ говорите нужно сто-% стабильность входящих условий ... в нашем разнообразиии форм отчётности - 1С лучшее ... вот ... остальное ручками или задницей ...
41. Александр Шишкин (Шёпот теней) 06.07.10 08:50
(38) ... 1С ... собрав достойных - являются БОЛЬШОЙ компанией где скорость прохождения "вопроса" низка и стоимость её решений и согласований "высока" ... опять же рамки нашего учёта - та же ЗП или НУ ... ужжж ПБУ18/02 никто не комментирует ... вот ...

... другое дело "частное" решение ... " здесь "отдельные" специалисты бЬют 1С наповал ... например тут ...

... вот ...

.. вот ...
42. Валерий Дубовой (Valerich) 06.07.10 09:02
(42) насчет достойных и сложности ЗП и НУ....

на дворе июль... страховые взносы анонсировали ще в середине прошлого года...

что имеем: в начала года была нервотрепка с выходом новых релизов, которые не работали... Сейчас конкретно сижу и занимаюсь внесением тех же исправлений в 298 релиз Зика, что и в несколько предыдущих, потому что в проводках по РБП путают аналитику, считают неправильно...... примеров тому и на этом сайте в том числе предостаточно....

Чем же заняты "достойные" и кто тогда мы? :cry:
43. Александр Рытов (Арчибальд) 06.07.10 09:03
(38) Брукс. "Мифический человеко-месяц"
Прикрепленные файлы:
44. Александр Рытов (Арчибальд) 06.07.10 09:14
(39) Вот так понятнее :)
А то за (32) хотел предать тебя анафеме 8-)
45. Александр Шишкин (Шёпот теней) 06.07.10 09:16
(42) ... ВалерычЪ ... я говорю о "сложности" оборота "мысли" в таких компаниях и "+" сложность изменений в "универсальных" программах ...

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

... частное решение проще ... но для этого нужно знать и частные условия ... как только появится коллектив больше 12 человек управление становится 2-х ступеньчатым ... а максимум чем может управлять человек это 3-ступенями ... а дальше - возрастающая степень не совершенства при любом количестве желания, ума, трудолюбия ...

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

... вот ...

п.с. "Закон Паркинсона" - человек, ораганизация как система стремиться достичь уровня своей Некомпетентности ...
46. Александр Шишкин (Шёпот теней) 06.07.10 09:21
(39) - с ... что-то у ВАС там ВСЁ слишком идеально - с ... и прямо такое ЕВРО-разделение труда ... хотьБЫоднимГЛАЗКОМпосмотретьВОТ ...
47. huse 06.07.10 09:24
1С пишет универсально - а ЭТО ещё сложнее

я бы уточнил - ПЫТАЮТСЯ писать универсально. Дело усложняется тем, что они оторваны от реалий жизни.... и пишут похоже подмастрья, а не мастра...


Писать универсально можно двумя путями: повышая уровень абстракции и делая на каждую новую область новый блок. 1С идет последним путем. ИТРП тоже...
48. Александр Шишкин (Шёпот теней) 06.07.10 09:31
... когда "пройден уровень компетентности" повышать абстракцию НЕвозможно ... при всЁм желании ...

.. к тому же "делая на каждую новую область новый блок" вы снижаете издержки на "интеллекте" и на "местном ремонте" ...

... вот ...

п.с. везде свои достоинства и не достатки ...
49. Александр Шишкин (Шёпот теней) 06.07.10 09:32
воообще ... но к теме:

"...За последнее столетие накопился колоссальный опыт реформирования самых разных экономических систем, причем зафиксированы не только немногочисленные удачные решения, но и ошибочные, неудавшиеся попытки. Так вот, оказывается, что реформаторы в разных странах и в разное время повторяют одни и те же ошибки: рассматривают реформы как абсолютное благо, даже не пытаясь оценить связанные с ними издержки; принимают за аксиому, что заимствовать надо непременно самые передовые институты и технологии; навязывают бизнесу абстрактные принудительные схемы, вместо того чтобы сделать его своим союзником; не пытаются компенсировать потери слоям населения, проигрывающим в результате реформ; не заботятся о правильном выборе последовательности реформ. Немало вреда принесла ориентация на догматические промежуточные цели вроде «децентрализации», или «усиления управляемости», или «повышения конкурентоспособности» без детального анализа влияния намечаемых мероприятий на эффективность производства, благосостояние и рост..."

...

... нет ПЛАНА - нет АНАЛИЗА - нет УПРАВЛЕНИЯ ...
50. Александр Рытов (Арчибальд) 06.07.10 09:42
Быть лучшим программистом - означает быть способным разрабатывать более эффективные и достоверные программы и знать, как делать это эффективно. То, что, по моему мнению, для этого нужно, - это совершенствование математических навыков, при этом я употребляю слово "математика" в смысле "искусство и наука эффективных рассуждений". В действительности задачи разработки высококачественных программ и построения высококачественных доказательств весьма сходны, настолько сходны, что я уже не могу их различать: я не вижу осмысленных различий между методологией программирования и математической методологией в общих чертах. Короче говоря, повсеместное вторжение компьютеров сделала способность к применению математического метода важнее, чем когда-либо.
По жестокой шутке истории, впрочем, американское общество выбрало именно двадцатое столетие для того, чтобы становиться все более и более нематематическим. Мы достигли парадоксального состояния, когда из всех так называемых "развитых наций" именно США сильнее всех зависят от программируемых компьютеров и хуже всех интеллектуально оснащены в данном направлении. Предположение о том, что проблема программирования может быть вылечена математическими средствами, мгновенно отвергается как совершенно нереалистичное.
В результате Разработка Программ ограждена от возможности стать поддисциплиной Информатики.

Остин, 26 августа 1995
Prof. dr. Edsger W. Dijkstra

Шёпот теней; +1 Ответить
51. Ярослав Волохов (YVolohov) 06.07.10 09:45
Это явно стоит почитать :)
wumka; Арчибальд; +2 Ответить
52. Александр Рытов (Арчибальд) 06.07.10 09:45
(47) Сложность продается лучше...
53. A.Y 06.07.10 10:29
(46) ок. постараюсь скоро описать ту систему что у нас выстроилась за последний год.
как уже сказал там все до жути просто.
но как сказал Дейкстра, на осознание этой простоты ушли годы жестоких боев на проектах и килотонны изученной литературы )
54. Валерий Дубовой (Valerich) 06.07.10 10:30
(45)
...хотя деятельность программиста заканчивается с конструированием корректной программы, процесс, который выполняется под управлением этой программы, является истинной сущностью этой деятельности; этот процесс должен завершиться с заданным эффектом; поведение этого процесса должно удовлетворять заданным спецификациям
.

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

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


Настоящим программистом не надо сложно управлять - он сам собой управлять должен. По моему глубокому мнению большая часть тех, кто себя гордо именует программистами - всего лишь кодеры - люди способные переложить одно из воможных решений задачи на конкретный язык программирования. Но возможных решений много... Найти наиболее элегантное, быстрое, нетребовательное к ресурсам вычислительной техники, используя при этом возможности средства разработки - вот в этом и состоит ИСКУССТВО программирования.
marsohod; Арчибальд; +2 Ответить 2
55. Александр Рытов (Арчибальд) 06.07.10 10:39
(54)
Настоящим программистом не надо сложно управлять - он сам собой управлять должен.
Недавно в одной из дискуссий по управлению проектами я заявил, что управленческая деятельность, включая принятие решений в условиях неопределенности, адаптивное управление, и т.п. - это часть повседневной деятельности программиста, причем не самая сложная. Программиста, а не кодера.
Ух как не понравилось ;)
marsohod; CheBurator; Valerich; +3 Ответить 1
56. Александр Шишкин (Шёпот теней) 06.07.10 10:45
(54) ... нууу... первая часть это "просто" ... программа может "хорошо" работать там где есть "повторяющиеся" действия (если мы говорим об автоматизации или хотя бы электронной механиации) ... если разветвлений много - то этоне повторение - это много частностей (ну например, написать программу учёта хотя бы пяти флажков ... это уже 2 в пятой степени вариантов ...) ...

... создать можно почти ВСЁ - вопрос цены и самое главное цены "перемены" логики и цены "ремонта" в случае обнаружения ошибки ... ?

...

по второй части ещё проще....
если ориентироваться на гениев программирования - то обслуживать их программы бкдет некому... а если создавать коллектив - то здесь КУЧА проблем которых никто не избежит ... от "свободности труда программистов" до хаотичности и не стандартности обслуживаемых процесоов, задачЬ ...

... вот ...

п.с. пока ТЫ один ... можешь и само организоваться ... но если программа "больше" тебя - тут возникнут все наши болезни ...
57. Валерий Дубовой (Valerich) 06.07.10 11:09
(56) программу гения обслуживать проще простого - потому как все гениальное просто
(с) народная мудрость
60. Александр Шишкин (Шёпот теней) 06.07.10 12:05
(57) ... ага ... ага ... отмазался ... ну-ну ... то-то у нас булава не летает ... видимо "простота" закончилась ... вотВедьВот ...
61. Александр Рытов (Арчибальд) 06.07.10 12:46
(60) Там гениев дефицит... Да еще хаза сгорела...
62. huse 06.07.10 14:08
(55) Вы сравнили деятельность управленца и деятельность исполнителя.

Исполнитель тоже управляет, но не людьми.
63. Александр Рытов (Арчибальд) 06.07.10 14:20
(62) Нет такой профессии - исполнитель. А управление, в том числе, управление человеком - это не профессия, а навык. Один из необходимых программисту.
64. A.Y 06.07.10 15:34
(63) интересно сколько лет нужно обучаться на программиста, который бы соответствовал требованиям Арчи? ))
а может все таки программисты пусть программируют, а руководители руководят? ))
так как то логичней и проще :)

опять же поделюсь нашим опытом. у нас все просто.
есть всего один вид должности - специалист. даже у руководителя и то специалист ))
и каждый сотрудник занимает эту должность.
но вот дальше самое интересное :)
по мере развития сотрудника, к нему подключаются компетенции и зоны ответственности, а также ФОТы. и тем самым чем сообразительнее человек, тем больше он может взять на себя ответственности, и тем выше его доход.
эдакий конструктор монстро-специалистов в реальном времени )
хочешь сегодня будешь бухгалтером, завтра менеджером по продажам, а после завтра программистом ))
65. Александр Рытов (Арчибальд) 06.07.10 16:06
(64)
Да, я разделяю ваше беспокойство: вряд ли можно научиться хорошо программировать, пройдя соответствующий курс. Ситуация сходна с аналогичной в математике, где программа обучения ориентирована на математические результаты; как заниматься самой математикой - студент должен впитать самостоятельно, так сказать.

prof. dr. Edsger W. Dijkstra
В этом вся суть. Не учат программированию, в лучшем случае, могут кодированию обучить. Меня, во всяком случае, не учили (http://infostart.ru/profile/46936/blog/840/).
Настоящий программист, кроме всего прочего, более способен стать монстроспециалистом (если уже не стал им в процессе "селфмейдинга"), ибо у него голова "заточена" на понимание (анализ) причинно-следственных отношений/связей.
Оценочно - три-четыре года напряженной работы.

Valerich; +1 Ответить
66. Александр Шишкин (Шёпот теней) 06.07.10 16:17
... чтобы получился "хороший" инженер ... требуется лет 15 практики и постоянного повышения квалификации и изучение "соседних" областей ... если он конечно не полный монстроспециалист или не занят "селфмейдингом" ...

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

... ВОТ ...
Арчибальд; Alraune; +2 Ответить 1
67. Александр Рытов (Арчибальд) 06.07.10 16:27
+(64)
а может все таки программисты пусть программируют, а руководители руководят?
Программист по-любому руководитель программного проекта. Ибо в его работу входят:
- предпроектное исследование предметной области;
- проектирование программы (комплекса);
- конструирование программы (комплекса).
Эти три стадии обязательны (хотя, возможно, для небольших задач существуют только в его мозгу). Затем, возможно, он примет участие в кодировании, адаптации (специально не говорю "отладка" - нет такого этапа), тестировании. А возможно, и нет, если имеет пару "подносчиков патронов" (в мое время это называлось "техник ВЦ"). То есть он официально может исполнять функцию руководителя проекта.
Провальный программный проект - это тот, где официальный руководитель не программист, а лидер программистов отсутствует или забил на лидерство (поскольку платят не ему, а официальному руководителю).
ИМХО: Ежели копнуть поглубже успешный программный проект, которым руководил не программист, обнаружатся торчащие уши программиста-профессионала.
Alraune; Шёпот теней; +2 Ответить 1
68. Александр Рытов (Арчибальд) 06.07.10 16:36
(66) Реально, конечно, чтобы иметь влияние на принятие решений (а речь, в том числе, и об этом) фикси должен заработать авторитет, что не так быстро делается. А вот грамотный аутсорсер в принципе может воспользоваться авторитетом своей фирмы (иногда).
69. Сергей (Che) Коцюра (CheBurator) 06.07.10 19:23
Шепот, ну сделай отдолжение - не мучай мозг посетителей, пиши в общепринятой нотации, ПЛИЗ!
70. A.Y 06.07.10 20:41
(67) Ладно, раз уж это портал программистов, то пусть такой специалист называется супер-программист :) Хотя в моем понимании это РП :)
но как не назови, речь тут идет просто о специалисте с вполне определенным набором компетенций: знание программ, компьютеров, методов описания процессов (инструкций, комиксов), умением ладить с людьми и бронированными нервами.
назвать его можно хоть рыцарем джедаем :) суть от этого не поменяется :)
Арчибальд; +1 1 Ответить
71. XXXL (XXXL) 06.07.10 21:14
Удивительно просто, сколько читаю ваши беседы в разных ветках - об одном и том же говорите (каждый о себе;)). Вы можете хотя бы иногда оторваться от своих субъективных позиций и попытаться выйти во "внешний мир" - не для того, чтобы найти подтверждение своих (ну конечно же правильных) теорий, а узнать, нарыть новые, да и познакомить с ними ваших благодарных слушателей?

72. Александр Рытов (Арчибальд) 07.07.10 07:19
(71) То-то и оно, что посмотришь на какую-то "новую" теорию, начнешь разбираться - оказывается, новая там только терминология. Или иная расстановка приоритетов рассматриваемых проблем. Потому-то и нужно знать прошлое - чтобы адекватно оценить настоящее и сделать будущее хоть немного ожидаемым.
Alraune; Шёпот теней; +2 Ответить
73. Александр Шишкин (Шёпот теней) 07.07.10 07:50
(71) ... желания нового ...веренее "вера" в новое как в "палочку выручалочку" означает следующее:

1. вы "ничего" не знаете и "не образованы" ...
2. вы не верите своему образованию, университету, родителям, роду, предкам ...
3. вы просто ничего не делаете на практике ... вам страшно ...

... вот ...
74. Игорь Исхаков (Ish_2) 07.07.10 08:18
(71) Впечатления совпадают. Взгляд на мир , на человеческую деятельность с точки зрения программистов скучноват. Скучноват он и у Дейкстры.
"Программирование оно ж - непростое дело. Ох , непростое.."
А изобретение "суперпрограммиста-РП" - это сила. Вершина.
Тяга к абсолюту в своей области есть обычное направление мысли варящегося в собственном соку мастера (Безенчука, Дейкстры , Арчибальда)
75. Александр Рытов (Арчибальд) 07.07.10 08:28
(74) Слово мастер применительно к Арчибальду должно начинаться с прописной буквы М. Безенчука это тоже касается. Дейкстра - тот, скорее, Учитель. А 1С, туды ее в качель, разве кисть дает? Ни кисти у ней, ни глазету...
76. Игорь Исхаков (Ish_2) 07.07.10 09:00
(75) Компьютерщик Безенчук -
первый шаг в художественном познании роли программиста на предприятии .
77. Александр Шишкин (Шёпот теней) 07.07.10 09:12
если ты "компьютерщик" то твоё место на стульчике у компьютера ... тогда ты "м"альчик ...

если ты как в (67) ... тогда ты "М"астер ... тогда код писать можно поручить и "м"-компьютерщику - но в очень конкретных рамках (иначе такая будет ах-инея типа УУ) ....

... вот ...
78. Александр Рытов (Арчибальд) 07.07.10 09:12
(76) Ну вот, опять ляпнул. Безенчук - не компьютерщик, а Обработчик прерываний :(
79. Игорь Исхаков (Ish_2) 07.07.10 09:42
(78) Понимаю .
Выделить главное и отбросить второстепенное тяжело даётся мастеру Арчибальду.
Мастеру нужны детали. И без кисти и глазета ему никак.
80. Александр Лапшин (zfilin) 07.07.10 09:59
Хорошая литература, годная.
81. Вячеслав Кадацкий (marsohod) 07.07.10 10:08
(11)
Где говорят в правилах и наставлениях, а не в утверждениях относительно фактов, там искусство... Положения искусства не утверждают, что что-нибудь есть, но указывают на то, что должно быть.
В таком случае физику тоже надо отнести в разряд искусства. Потому что хорошая физическая теория объясняет не только известные факты, но и предсказывает еще и неизвестные явления. Так, кстати, было открыто нейтрино - "на кончике пера" :)
Шёпот теней; +1 Ответить
82. Вячеслав Кадацкий (marsohod) 07.07.10 10:25
(64)
эдакий конструктор монстро-специалистов в реальном времени )
хочешь сегодня будешь бухгалтером, завтра менеджером по продажам, а после завтра программистом

Эдакий коммунизЬм получается :oops:
83. Александр Рытов (Арчибальд) 07.07.10 11:30
(82) Кухарка хоть и не может, но должна управлять государством :o
84. Александр Шишкин (Шёпот теней) 07.07.10 12:02
(83) ... вопрос о "кухарке" и "государстве" ... уточните КТО "кухарка" и КТО "государство" ... ? ... вот ...

... http://www.kara-murza.ru/books/sc_a/sc_a53.htm ...

Редкий демократический политик или журналист не помянул Ленина, который, якобы, заявил, что управлять государством должна простая кухарка. Возникла даже привычная метафора « ленинской кухарки ».

*В действительности В.И.Ленин писал в известной работе «Удержат ли большевики государственную власть» (т. 34, с. 315): «Мы не утописты. Мы знаем, что любой чернорабочий и любая кухарка не способны сейчас же вступить в управление государством. В этом мы согласны и с кадетами, и с Брешковской, и с Церетели».

...

http://ru.wikipedia.org/wiki/%D0%9B%D0%B5%D0%BD%D0%B8%D0%BD%D1%81%D0%BA%D0%B8%D0­%B5_%D1%84%D1%80%D0%B0%D0%B7%D1%8B

...
85. Вячеслав Кадацкий (marsohod) 07.07.10 12:23
...антропоморфный взгляд на машины и механический взгляд на людей...
...подозреваю, что именно этот механический подход ограничивает деятельность программистов механическими действиями по написанию кода, и затем измеряет "производительность труда программиста" количеством произведенных им строк кода. (Когда весьма широко известный и очень уважаемый ученый-компьютерщик использовал недавно эту меру производительности труда программиста в своей лекции, от слушателей поступило предложение говорить не о "количестве произведенных строк кода", а о "количестве израсходованных строк кода", и что лектор, следовательно, занес их не в ту графу учета баланса расходов и доходов. Лектор ответил, что он вынужден использовать эту меру производительности, поскольку не располагает никакой альтернативной, которая позволяет вести точный учет!) Это не может больше рассматриваться как безобидное заблуждение, поскольку принятие этой бессмысленной "меры производительности" профессиональными программистами гарантированно стимулирует их к написанию рыхлого кода.

Тема неоднократно обсуждаемая на ИС :)
bjjzpp; Valerich; Арчибальд; +3 Ответить 2
86. Александр Шишкин (Шёпот теней) 07.07.10 12:24
(83) ... вопрос о "кухарке" и "государстве" ... уточните КТО "кухарка" и КТО "государство" ... ? ... вот ...

... http://www.kara-murza.ru/books/sc_a/sc_a53.htm ...

Редкий демократический политик или журналист не помянул Ленина, который, якобы, заявил, что управлять государством должна простая кухарка. Возникла даже привычная метафора « ленинской кухарки ».

*В действительности В.И.Ленин писал в известной работе «Удержат ли большевики государственную власть» (т. 34, с. 315): «Мы не утописты. Мы знаем, что любой чернорабочий и любая кухарка не способны сейчас же вступить в управление государством. В этом мы согласны и с кадетами, и с Брешковской, и с Церетели».

...

http://ru.wikipedia.org/wiki/%D0%9B%D0%B5%D0%BD%D0%B8%D0%BD%D1%81%D0%BA%D0%B8%D0­%B5_%D1%84%D1%80%D0%B0%D0%B7%D1%8B

...

http://promanov.livejournal.com/9487.html

... вотведь ...

...
87. Александр Рытов (Арчибальд) 07.07.10 12:52
(86) Приписывание этой цитаты Лениу - заслуга тупых преемников Сталина. Это идея левых коммунистов.
В контексте моего замечания, "государство" - это предприятие, а "кухарка" - это "специалист" в неизвестной специальности.
Анатолия Ю. прошу не принимать эти слова на свой счет, поскольку на мой непредвзятый взгляд, он относится к исключениям, подтверждающим правило... :oops:
88. Александр Рытов (Арчибальд) 07.07.10 12:55
(85)
Опять-таки в это же время Гидрометцентр платил "пришельцам" 50 коп за строчку отлаженного фортранного текста.
http://infostart.ru/profile/46936/blog/840/
89. Александр Шишкин (Шёпот теней) 07.07.10 13:05
(85) ... банальное: какие "задачи"такой и "код" ... только "сверх"задача что-то создаЁт новое - всЁ остальное банально копирует и выживает ...

(87) ... специалист" в неизвестной специальности ... супер ...

как сказал Хазин: ... и раньше чиновник мог ничего не делать - но он знал "что" он не делает ... теперь он даже и не знает "что" он должен делать ...

... вот ...

90. Александр Рытов (Арчибальд) 07.07.10 13:14
(89) Специалист подобен флюсу - его полнота одностороння © К. Прутков.
Впервые, полазив по сайту Анатолия, усомнился в непогрешимости Пруткова :oops:
91. Вячеслав Кадацкий (marsohod) 07.07.10 14:23
(88) Вчера на фразе "преимущественно без осадков" смыло Гидрометцентр.
:D
Шёпот теней; +1 Ответить 1
92. Александр Рытов (Арчибальд) 07.07.10 14:30
(91) Это и есть результат приобретения программ "на вес" :D
marsohod; Шёпот теней; +2 Ответить
93. Евгений Евгений (leasing) 07.07.10 17:28
"Напротив, большинство наших систем гораздо сложнее, чем может считаться разумным, и слишком запутанны и хаотичны, чтобы ими было удобно и надежно пользоваться." - Это в полной мере относится к типовым 8-кам. На их фоне 7-ки типовые можно считать достижением.
Шёпот теней; +1 Ответить 1
94. L B (L_B) 07.07.10 17:53
(93) "Напротив, большинство наших систем гораздо сложнее, чем может считаться разумным, и слишком запутанны и хаотичны, чтобы ими было удобно и надежно пользоваться."
Золотые слова! Только их нужно сначала отнести к бухгалтерии и налоговому учету - в первую очередь. А учетные системы "отражают" запутанность и хаотичность. Отражают!
95. Юрий Тимофеев (Tatitutu) 07.07.10 17:57
Всем привет - все мурлыкаем ;)
96. Евгений Евгений (leasing) 07.07.10 20:22
(94) Не могу согласиться с этой точкой зрения. Просто у нас, с одной строны, очень много свободы для законотворчества- нормы выдают все кому не лень. Они то и пишут, как шифруют. С другой, даже те кто может писать ясно и четко- не хочет. Ему не выгодно.
Как бы там ни было, с их писаниной грамотный человек разбертся. Иначе все ошибались бы в учете и уплате налогов. А это не так- ошибается меньшинство.
Ничего запутанного нет в бухучете. Не сложнее таблицы Менделева. Что может быть запутанного в системе, которая совершенствуется 500 лет подряд? Курс обучения на дипломированного бухглатера в США - не менее 180 часов. Прослушал и можешь идти на "госсэкзамен". После успешной сдачи можешь обратиться к местным властям за получением статуса CPA.
И с налогами все понятно в каждый момент времени.
Главная проблема не в непонятности, а в изменичвости. На постсовке нормативы изменчивей погоды. И в этой изменчивости кровно заинтересованы чиновники. Они извлекают из этого непосредственные выгоды- семинары, публикации, консультации. Их от этого корыта только пулеметом отгонишь.
97. L B (L_B) 08.07.10 19:09
(96) Ну сравнивать с американским бухучетом российский - это вы насмешили.
Вот ссылка: http://www.vkursedela.ru/article711/.
Начало более чем пафосное:
"Подарочные сертификаты – широко распространенный во всем мире способ продаж." Попытка впихнуть в российский БУ данную схему продаж - 17 ( :!: ) ссылок на нормативные документы.
Вот насколько сложна должна быть программа, чтобы учесть весь этот кошмар?
98. Евгений Евгений (leasing) 09.07.10 01:17
(96) Скажите, а вы пробовали сравнивать?
99. Александр Рытов (Арчибальд) 09.07.10 07:18
(97) Статья, вообще-то, юмористическая. О том, как создать себе лишний геморрой.
Ни один нормальный бизнесмен - неважно, в России или в Штатах, - не станет оформлять манипуляции с сертификатами как торговые сделки. Это обычная акция по продвижению товара/фирмы, т.е. рекламная деятельность.
100. L B (L_B) 09.07.10 16:04
(98) А зачем это здесь и сейчас? Мы же говорим о наших программах и соответственно наш учет интересен, во всяком случае в вашем посте 93 были упомянуты именно они. И причем тут американский учет, о котором вы говорили в 96?
(99) А статью-то по ссылке читал? Что-то юмора я не заметила, все на полном серьезе. Особенно поразила фраза о том, что затраты на изготовление сертификата считаются внерелизационными - какая разница бизнесмену какие они - они затраты и должны идти на уменьшение прибыли - и все. Так вот если бы учет был простой - программы были бы простые.
101. Евгений Евгений (leasing) 10.07.10 09:43
(100) 44 счет - внереализационные доходы? 17 ссылок на нормативы определяют сложность автоматизации? Странно....