Здравствуйте, GlebZ, Вы писали:
GZ>В архитектуре Фон Неймана, да. Усугубляться. А насчет 8 ядер — посмотри Cell.
Я как-то смотрел его (поверхностно). Пришёл к выводу, что маркетологи в очередной раз отрабатывают свои деньги. До "нормальных" CPU ему подрасти бы не мешало, это что-то вроде DSP — эффективно только на узком круге задач. Ну и проблемы с пропускной способностью памяти не решает.
People who are more than casually interested in computers should have at least some idea of what the underlying hardware is like. Otherwise the programs they write will be pretty weird (c) D.Knuth
Здравствуйте, pp2, Вы писали:
pp2>Варианты конечно всегда есть, но даже если софт "свой", и на продажу в конечном счете, то рынок одинаково "безжалостен" ко всем. Как опередить конкурентов? Как предложить больше всяких фич и сэкономить бюджет проекта? Ну и т.д., соответственно "творчество" здесь весьма на любителя. И кстати частично даже не в области программирования вообще.
+1
pp2>Если софт открытый или не на продажу — то да, возможны варианты. Хотя общая тенденция на лицо.
Тенденция на лицо, но это совсем не означает, что ей нужно безусловно поддаваться. Тут, имхо, так: либо ты ищещь оправдания, либо возможности. Возможности искать труднее. Я, например, пытаюсь. И поэтому мне не интересно думать о том, что искусство становится ремеслом, места для фантазии не остается, индустрия выживает изобретателей и пр. Это не конструктивно.
Среди заповедей для художника от Сальвадора Дали была такая: "Художник -- рисуй!"
Очень к месту, имхо.
... << RSDN@Home 1.1.4 stable rev. 510>>
SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Здравствуйте, Nickolay Ch, Вы писали:
NC>Буду краток: писать код надо так, чтобы из него можно было получить максимальную денежную прибыль.
Хорошие слова. Только не надо под ними подразумевать скорость написания кода. Действительно, существует достаточно много продуктов сделанных тяп-ляп. Да, они выиграли тактически. Они впихнули полуживое решение и получили за них деньги. Только это стратегический проигрыш. Если кто-то увидет такой продукт, то он его запомнит навсегда. И навсегда запомнит, что те-то и те-то пишут не программы а набор ошибок. И исправить это очень сложно. Практически невозможно.
Сейчас существуют в некоторых отраслях такие вещи как портфорлио программ. Есть и тендеры, в которых указываются не только какие программы были сделаны, но и отзывы пользователей. И они кстати зачастую проверяются, так что враки не подпихнешь. Поэтому качество программы обязано быть высоким. Это значительно важнее чем скорость написания программ.
NC>Уважаемый mrozov правильно написал, что времена любителей позаниматься сексом с компом прошли в индустрии программирования.
Нет, не прошли. Просто пришла мода на другие извращения. IMHO И количество этих извращений значительно увеличилось. NC>Энтузиастам и "вольным художникам" не место в индустрии.
Место. И притом денежное место. Индустрия большая. Даже в замой замшелой конторе с шизофреническими процессами разработки, есть место творчеству. Просто у архитектора — одно поле для творчества, у программиста — другое. У меня есть друзья, я по одному взгляду могу сказать кто какой код писал. Потому как каждый индивидуален в своих предпочтениях. NC>Все вышенаписанное — мое имхо.
И слава богу.
Здравствуйте, gear nuke, Вы писали:
GN>Здравствуйте, GlebZ, Вы писали:
GZ>>В архитектуре Фон Неймана, да. Усугубляться. А насчет 8 ядер — посмотри Cell.
GN>Я как-то смотрел его (поверхностно). Пришёл к выводу, что маркетологи в очередной раз отрабатывают свои деньги. До "нормальных" CPU ему подрасти бы не мешало, это что-то вроде DSP — эффективно только на узком круге задач.
Я бы так не сказал. Но есть проблема что при нынешних языках это пока нереально. GN>Ну и проблемы с пропускной способностью памяти не решает.
Обрати внимание на быстрые, прямые, шины между процессорами.
Здравствуйте, eao197, Вы писали:
E>Тенденция на лицо, но это совсем не означает, что ей нужно безусловно поддаваться. Тут, имхо, так: либо ты ищещь оправдания, либо возможности. Возможности искать труднее. Я, например, пытаюсь. И поэтому мне не интересно думать о том, что искусство становится ремеслом, места для фантазии не остается, индустрия выживает изобретателей и пр. Это не конструктивно.
Согласен. Не буду "оправдываться". Исходный мой пост был несколько эмоционален и направлен на поиск этих самых оправданий и описанию тенденций. Действительно, возможности искать стоит, хотя это и не легко. Уйти из программирования — это самый простой способ (хотя иногда именно это радикальное решение помогает отдохнуть и взглянуть на ситуацию со стороны). Можно не уходить а пытаться жить и даже творить что-то в имеющихся условиях. Но исходная дискуссия насколько я понял, шла именно вокруг массового "среднего" программиста. Профессионалы врядли так просто "уйдут" из отрасли, а вот середнячку тяжелее, он может и бросить это дело, если что... Хотя многие профессионалы были замечены в соседних с ИТ областях, значит "изменяют" все-таки иногда
E>Среди заповедей для художника от Сальвадора Дали была такая: "Художник -- рисуй!" E>Очень к месту, имхо.
Ну мы же здесь не только "художники", но и философы! А вообще конечно,
+1
Здравствуйте, GlebZ, Вы писали:
GN>>это что-то вроде DSP — эффективно только на узком круге задач. GZ>Я бы так не сказал. Но есть проблема что при нынешних языках это пока нереально.
ИМХО проблема не в языках. Многие алгоритмы имеют зависимости по данным (нельзя продолжать выполнение, пока не известен результат предыдущей операции). Да возьмём для примера любимый компилятор — даже если распараллелим компиляцию отдельных файлов, то как быть с линкером?
Можно вспомнить много таких "революционных" технологий даже на x86 — MMX, SSE, ... реальных выигрышей они не дают, если бы обычных регистров добавили, да нормальный (не стековый) FPU сделали — результат бы мог и лучше получиться. Но это бы была только *эволюция*.
GN>>Ну и проблемы с пропускной способностью памяти не решает. GZ>Обрати внимание на быстрые, прямые, шины между процессорами.
Ну это для тех, кто решает в какие акции деньги вкладывать .
Меня больше смущают медленные, загогулистые шины CPU <-> RAM. Перед тем, как ядро начнёт что-то там считать на своей мега-скорости, ему нужно что-то прочитать из медленной памяти. И если расширяя шину памяти можно немного поднять скорость, то от латентности никак не избавиться.
People who are more than casually interested in computers should have at least some idea of what the underlying hardware is like. Otherwise the programs they write will be pretty weird (c) D.Knuth
Здравствуйте, GlebZ, Вы писали:
GZ>Здравствуйте, Nickolay Ch, Вы писали:
NC>>Буду краток: писать код надо так, чтобы из него можно было получить максимальную денежную прибыль. GZ>Хорошие слова. Только не надо под ними подразумевать скорость написания кода. Действительно, существует достаточно много продуктов сделанных тяп-ляп. Да, они выиграли тактически. Они впихнули полуживое решение и получили за них деньги.
Уже 2 раза тут писал, что под этим понимается каждый раз разное. И далеко не всегда скорость написания, так же как и далеко не всегда "нересурсоемкость" и т.п.
NC>>Уважаемый mrozov правильно написал, что времена любителей позаниматься сексом с компом прошли в индустрии программирования. GZ>Нет, не прошли. Просто пришла мода на другие извращения. IMHO
И слава богу (С)
NC>>Энтузиастам и "вольным художникам" не место в индустрии. GZ>Место. И притом денежное место. Индустрия большая. Даже в замой замшелой конторе с шизофреническими процессами разработки, есть место творчеству. Просто у архитектора — одно поле для творчества, у программиста — другое. У меня есть друзья, я по одному взгляду могу сказать кто какой код писал. Потому как каждый индивидуален в своих предпочтениях.
Вообще-то особенно при работе в команде код должен быть подчинен стандарту. Суть в том, что основная часть производства софта это именно индустрия, масс-продакшн.
Выдержали отдельно взятые ремесленники конкуренцию с мануфактурой? А ведь каждый из них был МАСТЕРОМ?
Да, и сейчас есть, мастера, делающий некие продукты руками, скажем какую-нибудь резную мебель, не придерживаясь стандартов производства и т.п. Только много ли их? И много ли они производят в процентном соотношении от всей произведенной мебели?
Здравствуйте, eao197, Вы писали:
PD>>Пишите свои программы эффективно, господа! По крайней мере настолько, насколько PD>>это возможно!
E>Имхо, пока за скорость разработки платят больше, чем за скорость работы заказанной программы, этот призыв останется "гласом вопиющего в пустыне".
Платят не за скорость разработки, и не за скорость программы которая получается в результате разработки. Платят за решение своих проблем. Программа должна решать задачи заказчика. Делать это она должна с примлемой производительностью на имеющемся у него железе. И решать эти задачи программа должна не через 10 лет, а сейчас. Причем программа еще должна стоить приемлемые для заказчика деньги.
... << RSDN@Home 1.2.0 alpha rev. 618>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, GlebZ, Вы писали:
PD>> Другой пример — сама Windows. Я прекрасно понимаю, что Windows NT 4 и PD>>Windows XP — не совсем одно и то же. Но та на 8 Мбайтах работала, а эта от PD>>128 нос воротит, подавай ей 256. GZ>NT 4.0 на 8 мегабайтах не работала, а обслуживала саму себя. И то, если сервис паки не ставить.
Знатоки блин. У NT 4.0 в минимальных требованиях было записано 16 мег. И как раз в них она осблуживала сама себя. А чтобы еще и в Дельфи на ней можно было работать комфортно нужно было поставить 32 метра.
Когда появились 128 метров стало ясно, что NT 4.0 просто неумеет извлечь выгоду из "такого объема памяти". Тогда появились сервиспаки которые содной стороны позволили NT 4.0 эффективно задействовать бОльший объем памяти, а с другой банально подняли требования к ее объему и были оптимизированными именно ан болИе объемы памяти. ХРюша может запустить на 32 метрах, но оптимизирована она на 256+.
... << RSDN@Home 1.2.0 alpha rev. 618>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
mrozov,
> Да в чем же я ошибаюсь? Везде, где это возможно, все стараются делать проще, а не эффективнее. > > Причины непереписывания на .net word-а по-моему очевидны. К неэффективности .net никакого отношения они не имеют.
И да, и нет. Если переписать, то, может, оно и нормально будет — сейчас, без эксперимента, сложно наверняка говорить Но вот причина, почему они не выпускают Office, перекомпилировав его с помощью MC++ или C++/CLI, заключается как раз в заметно уменьшающейся производительности, которую показывают собранные таким образом приложения Office.
Posted via RSDN NNTP Server 2.0 beta
Легче одурачить людей, чем убедить их в том, что они одурачены. — Марк Твен
Pavel Dvorkin,
> Не все сводится к мемори ликам и некорректным индексам. От ошибок алгоритма меня никакой FrameWork не защащает. Складывать килограммы с метрами (вместо того, чтобы умножать) и там вполне можно, .
С такими ошибками в C++ шаблоны могут помочь бороться.
Posted via RSDN NNTP Server 2.0 beta
Легче одурачить людей, чем убедить их в том, что они одурачены. — Марк Твен
GlebZ,
> Кроме того, тут стоит говорить не только о Framework, но вообще о языках высокого уровня. Не секрет, что язык высокого уровня генерит избыточный код и избыточно использует память. И чем выше язык, тем труднее поддается оптимизация кода компилятором.
Это не совсем так. Например, те же функциональные языки часто "уделывают" ряд других, менее высокоуровневых "конкурентов". В общем, корреляция не вполне установлена.
> В принципе, если взять тот-же STL, то говорить о том, что он по скорости 1 в 1 с кодом написанным вручную на С не приходится.
Да, часто быстрее.
> А string вообще кошмар, но зато жутко удобный.
Это к уровню языка отношения не имеет.
Posted via RSDN NNTP Server 2.0 beta
Легче одурачить людей, чем убедить их в том, что они одурачены. — Марк Твен
mrozov,
> Излишней является любая оптимизация, которая не направлена на изменение ситуации, при которой система не способна уложиться в определенные в проекте временные рамки на том оборудовании, для работы на котором она предназначена.
Только та, которая стоит дополнительного времени при разработке.
Posted via RSDN NNTP Server 2.0 beta
Легче одурачить людей, чем убедить их в том, что они одурачены. — Марк Твен
Nickolay Ch,
> Вообще-то особенно при работе в команде код должен быть подчинен стандарту. Суть в том, что основная часть производства софта это именно индустрия, масс-продакшн.
LOL
Это не так хотя бы по простому факту того, что выпускаемые программы отличаются друг от друга. В противном случае не понимаю, зачем их много...
Posted via RSDN NNTP Server 2.0 beta
Легче одурачить людей, чем убедить их в том, что они одурачены. — Марк Твен
pp2,
> Многие, например, неявно заинтересованы в том чтобы новая версия windows содержала больше ошибок, занимала больше места на диске и в памяти и работала медленнее (и похоже так и будет — исключений здесь не бывает так как того требуют ускорения сроков разработки, увы чудес не бывает)
В отношении количества ошибок прогноз не вполне оправдывается: чем дальше после Windows 95, тем их меньше. В следующих версиях обещают еще лучше, т.к. вкладывают деньги в повышение качества разработки.
Posted via RSDN NNTP Server 2.0 beta
Легче одурачить людей, чем убедить их в том, что они одурачены. — Марк Твен
Здравствуйте, Павел Кузнецов, Вы писали:
>> Вообще-то особенно при работе в команде код должен быть подчинен стандарту. Суть в том, что основная часть производства софта это именно индустрия, масс-продакшн.
ПК>Это не так хотя бы по простому факту того, что выпускаемые программы отличаются друг от друга. В противном случае не понимаю, зачем их много...
Диванов тоже много разных. И все произведены серийно.
Здравствуйте, McSeem2, Вы писали:
MS>Это я к тому, по достижении "определенной стадии просветления" (это такой само-сарказм) оказывается, что писать эффективный код — это не только приятно и интересно, но он еще и оказывается гораздо надежнее!
Ну и где он, этот эффективный и надежный код? Пойти что ли, поискать на улицах с фонарем?
MS> И что характерно, индустрия, "в которой не место энтузиастам" проявляет тенденцию к спросу на таких "динозавров".
Ну это известный факт — что хороший программист за одно и то же время сделает как более эффективный, так и более надежный код, чем плохой прогораммист. Ну и что это докажет то? Хороших программистов все равно не хватает.
Mikhail Polykovsky,
>>> Вообще-то особенно при работе в команде код должен быть подчинен стандарту. Суть в том, что основная часть производства софта это именно индустрия, масс-продакшн.
> ПК> Это не так хотя бы по простому факту того, что выпускаемые программы отличаются друг от друга. В противном случае не понимаю, зачем их много...
> Диванов тоже много разных. И все произведены серийно.
Разница: программы все разные, а диванов, выпускаемых серийно, много одинаковых. Соответственно, изготовление партий (одинаковых) диванов -- серийное производство, а изготовление (уникальных) диванов/программ -- штучное.
Posted via RSDN NNTP Server 2.0 beta
Легче одурачить людей, чем убедить их в том, что они одурачены. — Марк Твен
Здравствуйте, Sinclair, Вы писали:
S>Здравствуйте, Pavel Dvorkin, Вы писали:
PD>>Перекодирование строки из файла из 866 в 1251.
S>Гон. В файле нет строки. В файле есть байты. S>Поэтому достаточно использовать ровно один Encoding.Convert. S>Если ты из файла получил строку, то ты сам виноват — делаешь три Convert вместо одного.
А я тут ни при чем. Я просто привел пример из дискуссии