Судьба новых идей, или почему прогресс идет так медленно
От: Чистяков Влад (VladD2) Российская Империя www.nemerle.org
Дата: 27.08.08 15:42
Оценка: 416 (15) +1 -1 :))
Статья:
Судьба новых идей, или почему прогресс идет так медленно
Автор(ы): Чистяков Влад (VladD2)
Дата: 27.08.2008
Вот уже который раз встречаю преинтереснейшую картину. Эта картина настолько задевает меня, что я решил поделиться с вами своими впечатлениями. Картина эта выглядит так. Где-то в глубине народных масс появляется некая неординарная идея. Эта идея теми или иными путями доходит до ушей в Microsoft и представители Microsoft бодрым голосом заявляют, что мол, это идея бредовая/вредная/бесполезная, и вроде бы тихо про нее забывают. В лучшем случае просто не следует никакой реакции. Проходит время, и вдруг появляется массированный пиар этой самой идеи, исходящий из недр Microsoft. Далее начинается массированная поддержка этой идеи в блогах. Через некоторое время появляются слухи о планах по включению этой возможности в один из продуктов Microsoft, и где-то через 1-3 года продукт, реализующий эту возможность, появляется у нас на компьютерах.


Авторы:
Чистяков Влад (VladD2)

Аннотация:
Вот уже который раз встречаю преинтереснейшую картину. Эта картина настолько задевает меня, что я решил поделиться с вами своими впечатлениями. Картина эта выглядит так. Где-то в глубине народных масс появляется некая неординарная идея. Эта идея теми или иными путями доходит до ушей в Microsoft и представители Microsoft бодрым голосом заявляют, что мол, это идея бредовая/вредная/бесполезная, и вроде бы тихо про нее забывают. В лучшем случае просто не следует никакой реакции. Проходит время, и вдруг появляется массированный пиар этой самой идеи, исходящий из недр Microsoft. Далее начинается массированная поддержка этой идеи в блогах. Через некоторое время появляются слухи о планах по включению этой возможности в один из продуктов Microsoft, и где-то через 1-3 года продукт, реализующий эту возможность, появляется у нас на компьютерах.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re: Судьба новых идей, или почему прогресс идет так медленно
От: Кодёнок  
Дата: 28.08.08 07:36
Оценка: :)))
Здравствуйте, Чистяков Влад (VladD2), Вы писали:

ЧВV>Вот уже который раз встречаю преинтереснейшую картину.


«Уважайте темпы развития других людей»
Re: Судьба новых идей, или почему прогресс идет так медленно
От: mkizub Литва http://symade.tigris.org
Дата: 28.08.08 08:06
Оценка: +1
Здравствуйте, Чистяков Влад (VladD2), Вы писали:

ЧВV>Аннотация:

ЧВV>Вот уже который раз встречаю преинтереснейшую картину. Эта картина настолько задевает меня, что я решил поделиться с вами своими впечатлениями. Картина эта выглядит так. Где-то в глубине народных масс появляется некая неординарная идея. Эта идея теми или иными путями доходит до ушей в Microsoft и представители Microsoft бодрым голосом заявляют, что мол, это идея бредовая/вредная/бесполезная, и вроде бы тихо про нее забывают. В лучшем случае просто не следует никакой реакции. Проходит время, и вдруг появляется массированный пиар этой самой идеи, исходящий из недр Microsoft. Далее начинается массированная поддержка этой идеи в блогах. Через некоторое время появляются слухи о планах по включению этой возможности в один из продуктов Microsoft, и где-то через 1-3 года продукт, реализующий эту возможность, появляется у нас на компьютерах.

Законы эволюции на кривой кобыле не объедешь. Они объективны.
Вот разберись с этими законами, и не надо будет плакаться, ты будешь знать почему так происходит. И иногда даже сможешь придумать как эти законы использовать с пользой для себя.
SOP & SymADE: http://symade.tigris.org , блог http://mkizub.livejournal.com
Re[2]: Судьба новых идей, или почему прогресс идет так медле
От: VladD2 Российская Империя www.nemerle.org
Дата: 28.08.08 12:21
Оценка:
Здравствуйте, mkizub, Вы писали:

M>Законы эволюции на кривой кобыле не объедешь. Они объективны.

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

То есть эволюцию двигают в перед корпорации вроде MS?
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re: Судьба новых идей, или почему прогресс идет так медленно
От: SI_16  
Дата: 28.08.08 12:56
Оценка: :))) :)))
Мне кажется, единственный способ прекратить это безобразие — устроить Влада в Microsoft
Re[2]: Судьба новых идей, или почему прогресс идет так медле
От: cl-user  
Дата: 28.08.08 13:17
Оценка:
Здравствуйте, mkizub, Вы писали:

M>Законы эволюции на кривой кобыле не объедешь. Они объективны.

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

И много ты их "наиспользовал" для себя? "Пациент (SymADE) скорее жив чем мёртв.... Нееет, пациент скорее мёртв чем жив".
Re[3]: Судьба новых идей, или почему прогресс идет так медле
От: cl-user  
Дата: 28.08.08 13:21
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>То есть эволюцию двигают в перед корпорации вроде MS?


Это был стёб? Очччень хорошо, когда они хотя-бы не стоят у него на пути
Re[3]: Судьба новых идей, или почему прогресс идет так медле
От: mkizub Литва http://symade.tigris.org
Дата: 28.08.08 13:34
Оценка: 170 (22)
Здравствуйте, VladD2, Вы писали:

VD>То есть эволюцию двигают в перед корпорации вроде MS?


Нет. В эволюционной борьбе экосистема практически всегда сильнее чем один новый вид/технология.
Экосистема — это большое кол-во взаимосвязанных видов, они подогнанны друг к другу. Каждый вид в экосистеме оптимален,
то есть почти любое изменение (мутация) будет ухудшать его по отношению к экосистеме. Поэтому эволюционируют
не отдельные виды, а экосистема в целом, и эволюционирует очень медленно.
Чтоб что-то новое выжило — оно должно сформироваться в своей, некой маргинальной (пограничной) экосистеме. Точнее,
оно (новое) эту экосистему и должно сформировать. И потом уже эта новая экосистема сможет бороться на равных со старой.

Например, когда появилось радио — экосистема (набор технологий, привычки людей, развитая инфраструктура) передачи данных
уже существовала — почта, телеграф и т.п. Для радио нашлась маргинальная ниша — передача данных между кораблями в океане.
Просто повезло, что радиоволны отражаются от ионосферы, и за счёт этого огибают землю, и такая связь стала возможной.
Радио было по всем статьям хуже имеющихся технологий, но оно развивалось, поскольку было место (маргинальное) где
старые технологии вообще не работали. Потом с развитием радио (технологии, инфраструктуры и пр.) его стали использовать
всё шире и шире. Теперь радио-технологии почти полностью вытеснили старые телеграфы/телеграммы и пр.

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

Это очень обобщённое и неполное описание. В живой природе есть множество примеров развития и борьбы самых разных
вариантов экосистем. Если хочешь действительно понять как это происходит и как нужно действовать для развития
твоей новой технологии (nemerle) — почитай книжку Еськова "История Земли и жизни на ней" (кажется так).
Только помни, что книга — не инструкция, а повод для размышлений.
SOP & SymADE: http://symade.tigris.org , блог http://mkizub.livejournal.com
Re[4]: Судьба новых идей, или почему прогресс идет так медле
От: VladD2 Российская Империя www.nemerle.org
Дата: 28.08.08 14:31
Оценка:
Здравствуйте, mkizub, Вы писали:

M>Нет. В эволюционной борьбе экосистема практически всегда сильнее чем один новый вид/технология...

M>Так как нас интересуют компиляторы и языки программирования, то в применении к ним — для нового языка программирования
M>нужна такая ниша, где старые технологии (языки) не справляются. Тогда он будет развиваться. Тогда вокруг него
M>сформируется экосистема (в том числе и люди, знающие этот язык), которая и сможет бороться со старыми языками.
M>Если вы для nemerle не найдёте такой маргинальной ниши — проект засохнет. Найдёте — будет жить и развиваться,
M>как бы его не давили.

Вообще-то я говорил не о языке, а о добавлении новых фич в существующие языки. Скажм С++ немогут доработать вот уже 10 лет. C# меняется раз в 3 года по чайной ложке.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[5]: Судьба новых идей, или почему прогресс идет так медле
От: mkizub Литва http://symade.tigris.org
Дата: 28.08.08 15:41
Оценка: 33 (5)
Здравствуйте, VladD2, Вы писали:

VD>Вообще-то я говорил не о языке, а о добавлении новых фич в существующие языки. Скажм С++ немогут доработать вот уже 10 лет. C# меняется раз в 3 года по чайной ложке.


Ну это такая экосистема. Она организована вокруг фиксированного синтаксиса и семантики.
Это даёт то преимущество, что можно написать другой компилятор, можно написать другой анализатор кода — и они будут работать. Потому как следуют стандарту.
И этих обслуживающих программ, и этих программистов воспитанных изучать фиксированные языки — много. Почти любое изменение только ухудшит ситуацию для этих
программ и этих людей. Оно сделает устаревшими все эти программы и эти знания людей. Поэтому их "развивают" так, чтоб эти ухудшения были минимальными —
минимально переписать компилятор/IDE/рантайм, минимально добавить необходимых навыков программистам. Не говоря уже о таких фундаментальных проблемах:
— новые фичи быстро начинают противоречить друг другу и устаревшим фичам языка
— сложность коммпиляторов/IDE/рантайма возрастает непропорционально улучшениям (улучшения чувствуют единицы, те, кому новые фичи нужны, а усложняются компиляторы для всех).

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

Вот простой пример из эволюции жизни на Земле. Травка (степь) вытеснила леса. Она это сделала потому, что давала себя есть травоядным животным. И при
этом не погибала (до 60% биомассы травы можно съесть без малейшего ущерба для неё). А деревья, когда они только маленькие росточки — если с них съесть
листочки, то они погибнут. Они не могут позволить себя есть. Вот экосистема из травы и травоядных животных и вытеснила леса (в тех районах земли, где
хорошие условия для роста травы). Хотя степь не лучше леса, просто она "лучше" его на одном небольшом этапе — когда дерево ещё ростом с травинку.
Так же и в программировании — сейчас такой buzzword как "динамические скриптовые языки" только потому гудит, что они лучше на начальном этапе, когда
надо наваять простую программку на несколько страниц. Но этого оказалось достаточно — особенно для создания сайтов-однодневок в интернете и т.п.
И поэтому-же мета-программирование буксует — оно не нужно, пока проекты небольшие, а когда уже большие — то его туда не прилепить.

В общем, тут можно долго рассказывать, и ещё больше можно размышлять самому. Лично я для SymADE уже выстроил беспроигрышную стратегию.
Он будет развиваться в своей маргинальной нише, будет независимо ни от чего — потому как в этой нише у него нет конкурентов.
А когда вокруг него сформируется экосистема, когда он станет достаточно зрелым — вот тут он в мэйнстрим и попадёт.
И не важно займёт это 10 лет или 15, это произойдёт неприменно, потому как его будут толкать неодолимые силы.
Законы природы нельзя отменить, но можно или безуспешно пытаться пробить их лбом, или использовать в своих целях.
Но для начала их надо знать
SOP & SymADE: http://symade.tigris.org , блог http://mkizub.livejournal.com
Re[6]: Судьба новых идей, или почему прогресс идет так медле
От: VladD2 Российская Империя www.nemerle.org
Дата: 28.08.08 21:58
Оценка:
Здравствуйте, mkizub, Вы писали:

Извини, ты статью-то читал?
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[6]: Судьба новых идей, или почему прогресс идет так медле
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 29.08.08 06:04
Оценка:
Здравствуйте, mkizub, Вы писали:

M>В общем, тут можно долго рассказывать, и ещё больше можно размышлять самому. Лично я для SymADE уже выстроил беспроигрышную стратегию.

M>Он будет развиваться в своей маргинальной нише, будет независимо ни от чего — потому как в этой нише у него нет конкурентов.
M>А когда вокруг него сформируется экосистема, когда он станет достаточно зрелым — вот тут он в мэйнстрим и попадёт.
M>И не важно займёт это 10 лет или 15, это произойдёт неприменно, потому как его будут толкать неодолимые силы.
M>Законы природы нельзя отменить, но можно или безуспешно пытаться пробить их лбом, или использовать в своих целях.
M>Но для начала их надо знать

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


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[7]: Судьба новых идей, или почему прогресс идет так медле
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 29.08.08 06:05
Оценка: +4
Здравствуйте, VladD2, Вы писали:

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


VD>Извини, ты статью-то читал?


Я прочитал, а потом и перечитал. Но какой-то стержневой мысли выделить не смог. Зачем вообще эта статья была написана?


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[7]: Судьба новых идей, или почему прогресс идет так медле
От: mkizub Литва http://symade.tigris.org
Дата: 29.08.08 07:38
Оценка: 76 (10) :)
Здравствуйте, eao197, Вы писали:

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


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

Другой вид развития — адаптация. Это когда у нас есть система (в нашем случае — технология) которая может адаптироваться
(изменяться) к конкретным условиям. Не навсегда — когда условия изменятся, то и система изменится. В отличие от лягушек,
которым нужна и вода и земля, адаптивный вид животным легко мог-бы жить и в воде не требуя земли, и на земле не требуя
водоёмов — не эволюционирую, а подгоняя свой организм или окружающую среду под текущие условия.
Яркий пример адаптации — это, конечно, человек. Живёт от экватора до полюсов, адаптируясь, а не специализируясь.

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

Мета-программирование — по определению адаптивная технология. И следовательно, для неё справедливы все указанные
выше достоинства и недостатки. В частности, она "дороже", чем специализированные технологии. Она должна пройти
долгий путь развития, прежде чем "цена" использования мета-программирования станет сравнимой с "ценой" использования
специализированных технологий программирования. И её путь развития — это адаптация, а не специализация.
Нельзя быть "немного адаптивной", как нельзя быть "немножко беременной".
Влад меня попрекает тем, что я отказался от текста. А мне что, было легко принять это решение?
Текстовые технологии хорошо развиты, 90% проблем которые я имею в SymADE — связаны с отказом от
текстового представления программ. Но я понимаю, что другого выхода нет — надо двигаться в сторону
всё большей адаптивности, надо использовать и развивать свои сильные стороны.

И за счёт намного большей адаптивности SymADE (адаптивности отображения и редактирования программ,
адаптивности внутреннего представления — определения новых семантических понятий, а не просто
макросы которые трансформируют код в предопределённый набор семантических понятий) — SymADE может
занять те маргинальные ниши, которые Nemerle занять в принципе не может.
Я вчера честно думал несколько часов — в какую нишу можно приткнуть Nemerle? И не придумал.
Может Влад придумает. А может и нет. Он меня даже спросил — читал ли я его статью. Конечно читал.
А он не понимает, какое отношение мои комментарии имеют к его статье. Значит он не владеет этим
способом мышления, значит он тем более не сможет придумать куда приткнуть Nemerle. Разве только
случайно повезёт.
SOP & SymADE: http://symade.tigris.org , блог http://mkizub.livejournal.com
Re[6]: Судьба новых идей, или почему прогресс идет так медле
От: seregaa Ниоткуда http://blogtani.ru
Дата: 29.08.08 08:44
Оценка: +2
Здравствуйте, mkizub, Вы писали:

M>Альтернативный подход — мета-программирование, заключется в том, чтоб нужные фичи добавить по мере необходимости, добавить для себя, для своего проекта, не затрагивая стандарт. А в идеале — и возможность убрать старые фичи, которые мешают (и не нужны для данного проекта). У этого подхода есть свои недостатки и свои достоинства. И главное — он не развит, как экосистема. Мало хороших средств разработки, мало людей так программирующих и т.п. А неразвит он

M>по той причине, что нет такой ниши у него, где он был-бы жизненно необходим, где без него нельзя обойтись. Точнее, такие маргинальные ниши есть, но на них мало обращают внимание, всех тянет в мэйнстрим, а там такая конкуренция с имеющимися экосистемами, что мета-программированию ничего там не светит. Есть и ещё проблема — в подавляющем числе случаев мета-программирование становится реально нужным для мега-проектов, когда уже много кода написано и
M>проект упирается в невозможность его дальнейшего развития (из-за чрезмерно возросшей сложности). Но к этому времени так-же невозможно переписать проект по новой, на новом языке, изначально поддерживающем мета-программирование.

Думаю что в случае с MS картина выглядит иначе. У этой компании столько ресурсов, что она сама способна сформировать требуемую экосистему "на заказ". Как только MS решит добавить в очередную версию c#-а возможности метапрограммирования, тут же в бой вступит армия pr-менеджеров, евангелистов и т.д., будут выпущены книги и учебные пособия, блоги запестрят описанием вкусностей новой версии c#-а и премами их использования, появятся и специалисты и проекты, категорически не могущие обойтись без метапрограммирования. Примерно так оно и было во время появления .net
Мобильная версия сайта RSDN — http://rsdn.org/forum/rsdn/6938747
Автор: sergeya
Дата: 19.10.17
Re[8]: Судьба новых идей, или почему прогресс идет так медле
От: VladD2 Российская Империя www.nemerle.org
Дата: 29.08.08 08:53
Оценка: -3
Здравствуйте, eao197, Вы писали:

E>Я прочитал, а потом и перечитал. Но какой-то стержневой мысли выделить не смог.


Значит одно из двух. Или не смог понять, или не захотел понять.

E>Зачем вообще эта статья была написана?


Выражение мнения. Не расстраивайся. Это не все могут понять.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[8]: Судьба новых идей, или почему прогресс идет так медле
От: VladD2 Российская Империя www.nemerle.org
Дата: 29.08.08 08:54
Оценка:
Здравствуйте, mkizub, Вы писали:

Что ты понимаешь под словом "маргинальный"?
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[7]: Судьба новых идей, или почему прогресс идет так медле
От: Кодёнок  
Дата: 29.08.08 08:57
Оценка: 6 (1) +2 :))) :))) :))) :))) :))) :))) :)
Здравствуйте, seregaa, Вы писали:

[.......................................................]

Вот в Майкрософте наверное такая же ситуация — им говорят, давайте фичу добавим, полезно! А у них завязывается флейм об экосистемах на несколько месяцев. Когда мозговая диарея исчерпает свои ресурсы, кого-то вдруг осенит — а чего все началось-то? И тут они вспоминают о той полезной фиче...
Re[9]: Судьба новых идей, или почему прогресс идет так медле
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 29.08.08 09:18
Оценка:
Здравствуйте, VladD2, Вы писали:

E>>Зачем вообще эта статья была написана?


VD>Выражение мнения.


Ага. Осталось понять, какое именно мнение ты пытался выразить:
1. Что Nemerle -- это рулез.
2. Непонимание того, почему MS внедряет в свои разработки передовые подходы только спустя какое-то время.
3. Что-то еще.


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[9]: Судьба новых идей, или почему прогресс идет так медле
От: mkizub Литва http://symade.tigris.org
Дата: 29.08.08 10:34
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Что ты понимаешь под словом "маргинальный"?


Я же писал — "пограничный". Или можно сказать — "на обочине".
Это слово в русском — калька с английского margine.
SOP & SymADE: http://symade.tigris.org , блог http://mkizub.livejournal.com
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.