Re[5]: Об эффективности - с другой стороны
От: Glоbus Украина  
Дата: 18.11.05 13:35
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Здравствуйте, Glоbus, Вы писали:


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


PD>Спишут-то спишут, но следующий раз клиент к конкуренту пойдет. У которого сайт лучше.


PD>Вот пример, личный. Искал себе турпоездку. Нашел в Рамблере n ссылок, потом по ним пошел. Если где-то не открывалось или там я не мог быстро получить, что меня интересует — закрывал окно без всяких разговоров. Турфирм море...


Ну а они, заразы, все равно довольны и таким качеством...
Удачи тебе, браток!
Re[12]: Об эффективности - с другой стороны
От: OnThink Россия http://vassilsanych.livejournal.com
Дата: 18.11.05 13:55
Оценка: +1 -1
Здравствуйте, vlad_gri, Вы писали:

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



E>>Так вот, если в моем распоряжении есть P4-2GHz, то у меня есть выбор -- сделать задачу за месяц на Smalltalk/Ruby или за два месяца на C++. При этом реализация на Smalltalk/Ruby будет грузить процессор на 80% (при пиковой нагрузке), а C++ -- на 20%.


E>>В пользу чего делать выбор?

_>Если поставленна задача сделать за месяц то Smalltalk/Ruby.
_>А через месяц еще задача, которая будет крутится паралельно и.т.д.
_>И начнется ...

Никаких "начнётся". Нельзя выбирать заведомо трудоёмкое решение из-за каких-то "начнётся". Вопросы надо РЕШАТЬ, а не перманентно обдумывать. Завтра вы нафантазируете ещё больше и будете писать КОНКРЕТНУЮ рассматриваемую задачу на кодах процессора?

В конце концов, программный комплекс — это совокупность программы и железа. И если заказчик ПОТОМ решит установить на это же железо ещё чего-нибудь, то это уже будет его проблема.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[3]: Об эффективности - с другой стороны
От: McSeem2 США http://www.antigrain.com
Дата: 18.11.05 14:03
Оценка: 40 (6) +1
Здравствуйте, Дарней, Вы писали:

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


Д>Одного только понять не могу — откуда в представителях первой категории берется столько снобизма, что они называют любую работу кроме мегаэффективного рисования треугольников "рутиной" и "тоской зеленой"?


Можно процитировать мои слова, демонстрирующие снобизм? Речь была лишь о личных предпочтениях. У меня (лично у меня) — вот такие-то и такие-то предпочтения, и я специально сделал на этом акцент.

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


Я бы попросил читать то что написано, а не то, что хочется прочесть. Внимательнее, пожалуйста. Вывод треугольников — это действительно примитивная задача, а "вывод вдвое быстрее" — примерно такая же рутина, как и ковыряние в кривом API (собственно, это задача и относится к категории API). Натривиальным является некий способ генерации этих самых треугольников (это лишь для примера). Это очень тонкий момент, часто вызывающий непонимание. В представлении большинства людей "оптимизация" — это ковыряние на уровне машинных кодов и/или написание длинного и неряшливого спагети-кода. Это тоже на редкость тоскливое занятие. Повторю еще раз — интересной (для меня!) является прежде всего работа над алгоритмической частью, когда, например, требуется приблизить O(N log N) к O(N). Вам знакомо понятие О-нотации? Это чем-то напоминает процесс доказательства математических теорем. И язык как таковой здесь не имеет большого значения.

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


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

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


В моем понимании — копать вглубь — это считать такты и оптимизировать на уровне отдельных команд. Есть и такие задачи, в области firmware, но они меня тоже не прельщают.
Строить ввысь — это как раз и есть возводить здание из надежых и эффективных конструкций, устроенное примерно как цепочка неопровержимых математических доказательств. Это то, к чему я и стремлюсь (но основная доля моей работы — это пока что рутина, тем не менее).
Есть подозрение, что то, что Вы, уважаемый Дарней понимаете под "сложными задачами" — это на самом деле строительство вширь, когда конструкции могут стоять только на земле, а при попытке что-то соорудить из них ввысь, получается нелепое и неустойчивое нагромождение.
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
Re[7]: Об эффективности - с другой стороны
От: McSeem2 США http://www.antigrain.com
Дата: 18.11.05 14:12
Оценка: 24 (3) +4 :)
Здравствуйте, Дарней, Вы писали:

Д>ну если для тебя написание ОС — посредственная задача, то мне остается только удивляться, почему ты еще не нанял Билли Г работать уборшиком


По моему глубокому убеждению, вопрос материальной состоятельности других людей не должен Вас беспокоить. Вообще не должен. А "написание ОС" — это задача гигантского объема, а не сложности. Да, там есть нетривиальные части, но их объем в процентном отношении к тривиальному коду — исчезающе мал.

Еще раз озвучу свою позицию. Нам отведено не так уж и много времени на этой Земле и лично мне жалко тратить его на кодирование тривиальной логики. Мне хочется еще и удовольствия.
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
Re[4]: Об эффективности - с другой стороны
От: GlebZ Россия  
Дата: 18.11.05 14:37
Оценка: +1
Здравствуйте, McSeem2, Вы писали:

MS>Я бы попросил читать то что написано, а не то, что хочется прочесть. Внимательнее, пожалуйста. Вывод треугольников — это действительно примитивная задача, а "вывод вдвое быстрее" — примерно такая же рутина, как и ковыряние в кривом API (собственно, это задача и относится к категории API). Натривиальным является некий способ генерации этих самых треугольников (это лишь для примера). Это очень тонкий момент, часто вызывающий непонимание. В представлении большинства людей "оптимизация" — это ковыряние на уровне машинных кодов и/или написание длинного и неряшливого спагети-кода. Это тоже на редкость тоскливое занятие. Повторю еще раз — интересной (для меня!) является прежде всего работа над алгоритмической частью, когда, например, требуется приблизить O(N log N) к O(N). Вам знакомо понятие О-нотации? Это чем-то напоминает процесс доказательства математических теорем. И язык как таковой здесь не имеет большого значения.

+1

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

Кому как. Каждый смотрит со своей колокольни. У каждого свои понятия сложности. Мне интересен процесс построения объемных задач. Если говорить об аналогии со строительством(что-то это для всех стало популярной аналогией), это строить дом из булыжников. Нужно построить его так, чтобы он крепко стоял. А булыжники все разные. И нужно подобрать именно нужный булыжник с нужной геометрией. Иногда подработать напильником. Один неверный булыжник всех ситизенов похоронит. Мне сейчас такое интересно. А булыжников много. Это непростая задача.

С уважением. Gleb.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[5]: Об эффективности - с другой стороны
От: minorlogic Украина  
Дата: 18.11.05 15:47
Оценка: -1
Приведу сравнение возможно спорное но очень яркое.


1. Годами из мрамора вытачивать произведение искусства.
2. Годами и ТОННАМИ оттачивать мрамогрые глыбы для строительства .

Конечно глыбы точить можно творчески , улучшая производительность и т.д. но глыбы все равно остануться глыбами ...
Ищу работу, 3D, SLAM, computer graphics/vision.
Re[4]: Об эффективности - с другой стороны
От: Mamut Швеция http://dmitriid.com
Дата: 18.11.05 15:52
Оценка:
NC>Не вижу где не хватает памяти дико. И еще 512 метров никак бюджет не перенапрягут.

Фирма, млин. Не дают

NC>Если уж говорить о профессиональном юзании компа(разработка, у вас я вижу Photoshop, Dreamweaver) то поставить себе 1Гб-1.5 вполне нормально. Я долго работал на 512 Мб, все было ок, правла когда возникла необходимость разрабатывать на виртуалке поставил еще гиг без проблем.
... << RSDN@Home 1.2.0 alpha rev. 619>>


dmitriid.comGitHubLinkedIn
Re[6]: Об эффективности - с другой стороны
От: GlebZ Россия  
Дата: 18.11.05 15:58
Оценка:
Здравствуйте, minorlogic, Вы писали:

M>Приведу сравнение возможно спорное но очень яркое.

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

С уважением, Gleb.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[2]: попробую еще раз объяснить
От: Геннадий Майко США  
Дата: 18.11.05 16:08
Оценка: +1
Здравствуйте, Pavel Dvorkin,

PD>1. Если предельная эффективнсть не требуется — значит, железо сейчас избыточно. Если бы железо было намного слабее — писали бы то же, но эффективно, выжимали бы из железа все, чтот можно. Дороже. Хуже. Но делали бы.

PD>2. Эта избыточность ресурсов — что означает ?
--
Производя "железо", очень трудно предвидеть заранее, какие именно программы и в каком количестве на нем будут использоваться. В такой ситуации наиболее выигрышной генеральной стратегией с точки зрения производителя было бы выпускать наиболее производительное железо, которое позволяло бы охватить наибольший класс задач.
Другими словами, избыточность железа, скорее всего, связана не с тем, что нет задач, способных это железо загрузить, а с тем, что не известно заранее, какие и сколько задач на этом железе будут работать.
Если же это известно, то выбор железа можно произвести оптимально, исходя из потребностей этой задачи, обеспечивая ее оптимальную загрузку.

PD>3. Что будет, если этот рост прекратится ?

PD> a) произойдет возврат к борьбе за эффективность, так как потребности общества все же будут расти, а ресурсы расти не будут или будут расти медленнее потребностей
--
Это, скорее всего, так.
Однако даже если производительности железа будет ограничена свойствами "физического мира", есть сравнительно простой способ повышения производительность — использовать несколько "ограниченных" устройств параллельно, одновременно.

С уважением,
Геннадий Майко.
Re[13]: Об эффективности - с другой стороны
От: vlad_gri  
Дата: 18.11.05 16:13
Оценка:
Здравствуйте, OnThink, Вы писали:


OT>Никаких "начнётся". Нельзя выбирать заведомо трудоёмкое решение из-за каких-то "начнётся". Вопросы надо РЕШАТЬ, а не перманентно обдумывать. Завтра >вы нафантазируете ещё больше и будете писать КОНКРЕТНУЮ рассматриваемую задачу на кодах процессора?



Вы когда-нибудь занимались не шарашками расчитанными на месяц, типа получил бабки и свалил,
а нормальным сопровождением своих же програм которое длится более n лет.
Деньги нужно брать не за РЕШЕНИЕ, а за то что оно (ваше РЕШЕНИЕ) будет работать и приносить клиенту прибыль.

n — 1,2,3 и.т.д

OT>В конце концов, программный комплекс — это совокупность программы и железа. И если заказчик ПОТОМ решит установить на это же железо ещё >чего-нибудь, то это уже будет его проблема.


И обязательно решит. (Вашими молитвами)
Re[10]: Об эффективности - с другой стороны
От: Дарней Россия  
Дата: 18.11.05 17:18
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>А можно пример ?


http://www.paulgraham.com/avg.html
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Всех излечит, исцелит
добрый Ctrl+Alt+Delete
Re[8]: Об эффективности - с другой стороны
От: Дарней Россия  
Дата: 18.11.05 17:18
Оценка:
Здравствуйте, minorlogic, Вы писали:

M>С тем что задача "быстрого выведения треугольника" юыла озвученна как легкая. Заметь разницу между "выведения треугольника" и "быстрого выведения треугольника" , хотя и само "выведения треугольника" не такое простое как кажется.


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

M>Намного проще перелопатить какойнить ГУЙ ,насыпать обработчиков , SQL запрос(простой) и т.д.


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

M>Она по большей части посредственная , она ОЧЕНЬ ОБЪЕМНАЯ но посредственная , хоть в ОС и нужны куски отшлифованные как алмаз, но это неболбшая и специфичная часть работы.


что сложнее — выдолбить из мрамора статую высотой в два метра, или построить небоскреб высотой в энное количество сотен метров?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Всех излечит, исцелит
добрый Ctrl+Alt+Delete
Re[8]: Об эффективности - с другой стороны
От: Дарней Россия  
Дата: 18.11.05 17:18
Оценка:
Здравствуйте, McSeem2, Вы писали:

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


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

MS>А "написание ОС" — это задача гигантского объема, а не сложности. Да, там есть нетривиальные части, но их объем в процентном отношении к тривиальному коду — исчезающе мал.


Части — тривиальны, построение же из них целого — чрезвычайно сложная задача.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Всех излечит, исцелит
добрый Ctrl+Alt+Delete
Re[4]: Об эффективности - с другой стороны
От: Дарней Россия  
Дата: 18.11.05 17:18
Оценка: +1 -1
Здравствуйте, Шахтер, Вы писали:

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

Ш>Без этого высотка просто рухнет.

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

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


Как быстро ты записал меня в подмастерья, а себя — в мастера. У тебя есть точные данные, что дело обстоит именно так?

Если уж ты заговорил про художников, давай расставим все точки над "Ё"
Ну так вот — у художников все стандартизовано куда покруче, чем у программистов.
Стандартны материалы, стандартны инструменты, и даже техники нанесения рисунка — тоже стандартны. Так что мастера просто используют набор готовых стандартов. Изобретают что-то новое только гении, которых можно пересчитать на пальцах за всю историю человечества. Вероятно, именно к этому разряду ты себя и относишь?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Всех излечит, исцелит
добрый Ctrl+Alt+Delete
Re[4]: Об эффективности - с другой стороны
От: Дарней Россия  
Дата: 18.11.05 17:18
Оценка:
Здравствуйте, McSeem2, Вы писали:

MS>Можно процитировать мои слова, демонстрирующие снобизм? Речь была лишь о личных предпочтениях. У меня (лично у меня) — вот такие-то и такие-то предпочтения, и я специально сделал на этом акцент.


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

ась? Стремление быть уникальным — это конечно похвально, но зачем же называть рутинщиками всех, кто не разделяет твоих пристрастий?

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


MS>Я бы попросил читать то что написано, а не то, что хочется прочесть. Внимательнее, пожалуйста. Вывод треугольников — это действительно примитивная задача, а "вывод вдвое быстрее" — примерно такая же рутина, как и ковыряние в кривом API (собственно, это задача и относится к категории API). Натривиальным является некий способ генерации этих самых треугольников (это лишь для примера). Это очень тонкий момент, часто вызывающий непонимание. В представлении большинства людей "оптимизация" — это ковыряние на уровне машинных кодов и/или написание длинного и неряшливого спагети-кода. Это тоже на редкость тоскливое занятие. Повторю еще раз — интересной (для меня!) является прежде всего работа над алгоритмической частью, когда, например, требуется приблизить O(N log N) к O(N). Вам знакомо понятие О-нотации? Это чем-то напоминает процесс доказательства математических теорем. И язык как таковой здесь не имеет большого значения.


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

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


Иными словами, ты считаешь эту задачу слишком сложной?

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


это подозрение не имеет под собой никаких оснований
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Всех излечит, исцелит
добрый Ctrl+Alt+Delete
Re[9]: Об эффективности - с другой стороны
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 18.11.05 17:26
Оценка: +1
Здравствуйте, Дарней, Вы писали:

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


Д>А меня и не беспокоит. Мне просто интересно — почему это мозг вселенского масштаба, достигший глубочайшего просветления в области программирования, и вдруг работает на дядю — вместо того, чтобы рулить своей корпорацией?


А почему Энштейн не был самым богатым человеком в мире (в свое время)?
... << RSDN@Home 1.1.4 stable rev. 510>>


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[5]: Об эффективности - с другой стороны
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 18.11.05 17:28
Оценка:
Здравствуйте, Дарней, Вы писали:

Д>Если уж ты заговорил про художников, давай расставим все точки над "Ё"

Д>Ну так вот — у художников все стандартизовано куда покруче, чем у программистов.
Д>Стандартны материалы, стандартны инструменты, и даже техники нанесения рисунка — тоже стандартны. Так что мастера просто используют набор готовых стандартов. Изобретают что-то новое только гении, которых можно пересчитать на пальцах за всю историю человечества.

И что эти гении изобретают? Новый состав красок? Или новый оттенок сангины?

Крайне неудачное сравнение.
... << RSDN@Home 1.1.4 stable rev. 510>>


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[5]: Об эффективности - с другой стороны
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 18.11.05 17:30
Оценка:
Здравствуйте, Дарней, Вы писали:

Д>

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

Д>ась? Стремление быть уникальным — это конечно похвально, но зачем же называть рутинщиками всех, кто не разделяет твоих пристрастий?

А как их еще называть? Если человек может спокойно заниматься рутиной (от которой бежит не только McSeem2, но и я, к примеру), то почему его нельзя назвать рутинщиком?
... << RSDN@Home 1.1.4 stable rev. 510>>


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[6]: Об эффективности - с другой стороны
От: Дарней Россия  
Дата: 18.11.05 18:37
Оценка:
Здравствуйте, eao197, Вы писали:

E>Крайне неудачное сравнение.


не я его предложил.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Всех излечит, исцелит
добрый Ctrl+Alt+Delete
Re[10]: Об эффективности - с другой стороны
От: Дарней Россия  
Дата: 18.11.05 18:37
Оценка:
Здравствуйте, eao197, Вы писали:

E>А почему Энштейн не был самым богатым человеком в мире (в свое время)?


мы говорим не про абстрактные теории, из которых нельзя извлечь непосредственную пользу. Мы говорим о программировании, то есть — производстве некоторой продукции, которая стоит денег.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Всех излечит, исцелит
добрый Ctrl+Alt+Delete
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.