OberonCore
https://forum.oberoncore.ru/

"Остерегайтесь инструментов повыш-я производ-ти" (про IDE)
https://forum.oberoncore.ru/viewtopic.php?f=27&t=4278
Страница 1 из 1

Автор:  Илья Ермаков [ Понедельник, 04 Март, 2013 21:19 ]
Заголовок сообщения:  "Остерегайтесь инструментов повыш-я производ-ти" (про IDE)

http://habrahabr.ru/post/170443/

Цитата:
Visual Studio нам помогает, но она также толкает нас к написанию (или не написанию) кода специфическим путём. Среда направляет нас.
Делает ли это нас более продуктивными? Я даже не знаю как измерить продуктивность разработчика, так что я не могу дать ответ. Учимся ли мы, когда программируем таким способом? Я бы сказал – не особо.
Несмотря на то, что Visual Studio, во многом, является впечатляющим и весьма полезным программным обеспечением, меня беспокоит то, что я очень зависим от неё. Чтобы изучить новые методики, я пытаюсь следить за тем, что происходит вне .NET\Microsoft экосистемы. ...
Однако, я чувствую себя скованным из-за моей зависимости от Visual Studio. Я хочу изучать и использовать множество других технологий, как и .NET, так что я совсем не ищу инструментов, которые будут усиливать мои узы с Visual Studio. Использование простой обыкновенной Visual Studio [без продвинутых средств типа ReSharper] – наименьшее, что я могу сделать для расширения своих горизонтов.


Цитата:
Основным аргументом «за» инструменты повышения производительности является то, что их использование делает вас более эффективным программистом. «Без ReSharper моя производительность падает на 50%, я удивлён, что вы можете справлять без него». Это очень интересное утверждение. А как вы вообще измеряете производительность?
Во имя аргументации, давайте на минуту сделаем вид, что производительность программиста измеряется количеством написанных строк кода. Существует довольно распространённый миф о том, что профессиональный программист пишет всего 10 строк кода в день. Возможно, это не правда, но даже если так, то какое количество строк в день вы пишете в среднем? 100? 200? Действительно ли вы собираетесь утверждать, что узкое горлышко вашей производительности определяется тем, как быстро вы можете печатать? Серьёзно? Тогда учитесь печатать быстрее.
Положим, что большую часть времени, код читают, а не пишут. Код должен быть оптимизирован для чтения, а не для написания. Таким образом, производительность, если она вообще может быть измерена, должна измеряться тем как быстро программисты смогут прочитать и понять кусок кода, а не тем, как быстро этот кусок кода может быть написан.
Более того, если вы считаете, что парное программирование это хороший и эффективный способ производства программного обеспечения, то вы также должны понимать, что при парном программировании в каждый отдельно взятый момент, как минимум один человек вообще ничего не печатает.
Как разъяснил это Мартин Фаулер: «Парное программирование сокращало бы производительность наполовину, если бы самой сложной частью программирования было печатание». По моему опыту, печатание – не самая сложная часть. Таким образом, я не убеждён в том, что «инструменты повышения производительности» делают кого-то более эффективным программистом.


Цитата:
Чарльз Петцольд обратил в своей замечательной статьей внимание на то, что Visual Studio принуждает к стилю разработке снизу-вверх, что не очень вяжется с потребностями бизнеса. Visual Studio (с инструментом повышения производительности или без) делает сложной (но не невозможной) разработку «снаружи-внутрь».
Я полагаю, что помогая действовать нам строго определённым образом, инструмент закрывает для нас множество других возможностей. Мы можем даже не подозревать о том, что от нас остаётся скрытым, но если мы сможем отделаться от подобной руки помощи, то мы, возможно, сможем увидеть и другие возможности.
Я не против того, чтобы инструмент мне изредка помогал, но в остальное время я бы предпочёл принимать обоснованное решение, с учётом всей имеющейся информации самостоятельно. Я думаю, что, по крайней мере нужно понимать, что принятие помощи означает принятие решений за нас. Получается не беспроигрышная ситуация. Может быть я и получаю возможность завершить задание быстрее, но лишаюсь возможности учиться. Мало того, чем больше я полагаюсь на содействие инструмента, тем более зависимым от него я становлюсь. Для обозначения такой ситуации даже слово специальное есть. Оно звучит как «вендор-запирание» (vendor lock-in).

Автор:  prospero78 [ Пятница, 23 Сентябрь, 2016 10:40 ]
Заголовок сообщения:  Re: "Остерегайтесь инструментов повыш-я производ-ти" (про ID

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

Вот это гениальная фраза)))

Автор:  Rifat [ Пятница, 23 Сентябрь, 2016 15:37 ]
Заголовок сообщения:  Re: "Остерегайтесь инструментов повыш-я производ-ти" (про ID

Это было осознано еще в 1984 году:
Цитата:
"When developing or reusing software components, one is often forced to study source
code. In many cases this code contains only little or even no design information,
which makes it hard to read and understand it. This is the main reason, why software
maintenance costs dominate over all other life-cycle costs. Standish (1984), for
example, discovered, that the time needed to understand source code, causes 50 to 90
percent of the maintenance costs. Therefore high software quality, in form of readable
source code, is the best way to save time and money for new developments."

http://www.literateprogramming.com/rlp.pdf

К сожалению, сам первоисточник
Standish, T.A. 1984. An Essay on Software Reuse
не смог найти.

Автор:  Artyemov [ Пятница, 23 Сентябрь, 2016 17:14 ]
Заголовок сообщения:  Re: "Остерегайтесь инструментов повыш-я производ-ти" (про ID

An Essay on Software Reuse, IEEE Transactions on Software Engineering, Vol. SE-10, No.5, pp. 494-497, (September 1984).
Журнал платный, если я не ошибаюсь.

Автор:  kemiisto [ Пятница, 23 Сентябрь, 2016 17:29 ]
Заголовок сообщения:  Re: "Остерегайтесь инструментов повыш-я производ-ти" (про ID

Artyemov писал(а):
Журнал платный, если я не ошибаюсь.

Эта статья (и многие-многие другие :wink: ) есть на Sci-Hub.

Вложения:
standish1984.pdf [2.05 МБ]
Скачиваний: 390

Автор:  Artyemov [ Пятница, 23 Сентябрь, 2016 17:42 ]
Заголовок сообщения:  Re: "Остерегайтесь инструментов повыш-я производ-ти" (про ID

Благодарствуйте.
Про Sci-hub в курсе, но он на запрос "IEEE Transactions on Software Engineering, Vol. SE-10, No.5, pp. 494-497, (September 1984)" выдал одну страничку.

Автор:  Иван Кузьмицкий [ Пятница, 23 Сентябрь, 2016 20:53 ]
Заголовок сообщения:  Re: "Остерегайтесь инструментов повыш-я производ-ти" (про ID

Цитата:
Я просто записал то, как я работаю и закачал. Я бросаю вам вызов посмотреть эту сессию от начала до конца. Это будет скучно. Вы увидите длительные периоды простоев и то как подолгу я думаю. Это на самом деле реальная картина того как я работаю.


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

Вот ещё ссылочка на пример бортжурнала.

Автор:  Info21 [ Суббота, 24 Сентябрь, 2016 09:16 ]
Заголовок сообщения:  Re: "Остерегайтесь инструментов повыш-я производ-ти" (про ID

Всем большое спасибо за Стандиша.

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

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/