Re[6]: Графическое программирование и здоровье
От: UnseriousSam  
Дата: 16.06.10 09:09
Оценка:
Здравствуйте, samius, Вы писали:

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


US>>Я графическое программирование представляю как процесс создания картины или мультика. А если просто, то вместо текстового языка использовать графический, где можно будет по полной развернуть свои творческие способности.


S>Не могу себе представить выдумывание и заучивание 2-3х тысяч доменно ориентированных образов. Тут любого творца переклинит.


И не надо. Я так понимаю, ты себе представляешь это как заучивание каждого пиксела образа, чтобы потом его можно было повторить, прям точь-в-точь как написать имя уже когда-то придуманного класса. Образ создается один раз. В других случаях он уже будет использоваться как готовый или будет использоваться только для чтения.
Кстати, очень даже можно было бы первым шагом перейти к литературному программированию Хотя смайлик лишний, так как этот термин уже ввел когда-то Дональд Кнут. В википедии есть статься. Там, кстати, литературное программирование называют грамотным.

"Литературное (английский термин намеренно двусмысленный), или грамотное программирование (англ. Literate Programming) — концепция, методология программирования и документирования. Термин и саму концепцию разработал Дональд Кнут в 1981 году при разработке системы компьютерной вёрстки TeX.

Возможно, что самый простой способ понять ЛП — это вспомнить объяснения в курсах программирования, написанные фразами на «псевдокоде» на «человеческом языке». ОНИ ПОНЯТНЫ, КОГДА САМ КОД ТРУДЕН, и скрывают под одной фразой-«оператором» возможно множество других вложенных абстракций и/или программного кода на непосредственно машинном языке.

Самому теперь стало понятно. Трудности распознавания естественного языка очевидны. И вот вставить в код image, с нарисованным персонажем, распознать легко, так уже в коде image будет представлен однозначной сущностью. Компилятору не придется париться.
Re[6]: Графическое программирование и здоровье
От: FR  
Дата: 16.06.10 09:09
Оценка:
Здравствуйте, samius, Вы писали:


S>Не могу себе представить выдумывание и заучивание 2-3х тысяч доменно ориентированных образов. Тут любого творца переклинит.


Ну китайцы и японцы выучивают
Но при этом их скорость чтения мало отличается от скорости чтения европейцев.
Re[6]: Графическое программирование и здоровье
От: UnseriousSam  
Дата: 16.06.10 09:11
Оценка:
Здравствуйте, FR, Вы писали:

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


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

US>>Я графическое программирование представляю как процесс создания картины или мультика. А если просто, то вместо текстового языка использовать графический, где можно будет по полной развернуть свои творческие способности.

FR>Графические языки получаются более объемными и менее удобными чем текстовые.


Ты имеешь ввиду языки, где кругом одни квадратики с вписанными в них названиями и стрелочки? Просто такие языки, действительно, практически ничего нового не добавляют, а попариться заставляют.
Re[6]: Графическое программирование и здоровье
От: Andrei N.Sobchuck Украина www.smalltalk.ru
Дата: 16.06.10 09:16
Оценка:
Здравствуйте, UnseriousSam, Вы писали:

US>В подсознании хранится весь набор информации, связанной с каким-либо объектом. Если у тебя есть класс Visitor, то

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

Visitor у меня стойко ассоциируется с двойной диспетчеризацией, а не с налоговым инспектором. Двойная диспетчеризация вполне ассоциируется с картинкой иллюстрирующей процесс обмена сообщениями. Но это если вдуматься. Когда бегло смотришь в код динамика потоков сообщений зачастую не нужна. Визитор и всё точка. Я понял что это, но не хочу захламлять текущий контекст ненужной информацией. Так как я уже понял, что это, то ключи в виде запахов, костюмов и прочего уже не нужны.

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


То что мозг при усвоении информации строит связи и ассоциации — это ясно. Но они у всех разные. Значит картинки на мониторе тоже должны быть разные. А программа должна быть понятна не только автору. Это раз. Второе — что делать упомянутым кинестетам? Переходить на азбуку брайля?

В третих, имхо, любые вспомогательные образы, звуки, ощущения это просто ключи к вызову deus ex machina, который просто решает всё. Я не уверен, что ключ в виде уборщицы бабы Нюры, лучше текстового ключа "GC.Collect()". А последнее лучше универсального образа тем, что сразу задаёт контекст.
Я ненавижу Hibernate
Автор: Andrei N.Sobchuck
Дата: 08.01.08
!
Re[7]: Графическое программирование и здоровье
От: UnseriousSam  
Дата: 16.06.10 09:21
Оценка:
Здравствуйте, Andrei N.Sobchuck, Вы писали:

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


US>>В подсознании хранится весь набор информации, связанной с каким-либо объектом. Если у тебя есть класс Visitor, то

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

ANS>Visitor у меня стойко ассоциируется с двойной диспетчеризацией, а не с налоговым инспектором. Двойная диспетчеризация вполне ассоциируется с картинкой иллюстрирующей процесс обмена сообщениями. Но это если вдуматься. Когда бегло смотришь в код динамика потоков сообщений зачастую не нужна. Визитор и всё точка. Я понял что это, но не хочу захламлять текущий контекст ненужной информацией. Так как я уже понял, что это, то ключи в виде запахов, костюмов и прочего уже не нужны.


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


ANS>То что мозг при усвоении информации строит связи и ассоциации — это ясно. Но они у всех разные. Значит картинки на мониторе тоже должны быть разные. А программа должна быть понятна не только автору. Это раз. Второе — что делать упомянутым кинестетам? Переходить на азбуку брайля?


ANS>В третих, имхо, любые вспомогательные образы, звуки, ощущения это просто ключи к вызову deus ex machina, который просто решает всё. Я не уверен, что ключ в виде уборщицы бабы Нюры, лучше текстового ключа "GC.Collect()". А последнее лучше универсального образа тем, что сразу задаёт контекст.


Так чем больше ключей, тем быстрее и полнее понимание. Как считаешь? Иначе мы бы жили только в мире звуков, образов, или тактильных ощущений.
Re[9]: Графическое программирование и здоровье
От: Andrei N.Sobchuck Украина www.smalltalk.ru
Дата: 16.06.10 09:24
Оценка: +1
Здравствуйте, FR, Вы писали:

FR>показывает что текст мозгом воспринимается именно как поток образов, а не как поток символов.


Именно. При том образов имеющих одинаковую интерпретацию разными людьми и устойчивость к сбоям (возможность коррекции ошибок).
Я ненавижу Hibernate
Автор: Andrei N.Sobchuck
Дата: 08.01.08
!
Re[7]: Графическое программирование и здоровье
От: UnseriousSam  
Дата: 16.06.10 09:25
Оценка:
Здравствуйте, Andrei N.Sobchuck, Вы писали:

ANS>Visitor у меня стойко ассоциируется с двойной диспетчеризацией, а не с налоговым инспектором. Двойная диспетчеризация вполне ассоциируется с картинкой иллюстрирующей процесс обмена сообщениями.


А лучше было бы, если бы вся информация воспринималась непосредственно.
Re[8]: Графическое программирование и здоровье
От: Andrei N.Sobchuck Украина www.smalltalk.ru
Дата: 16.06.10 09:32
Оценка:
Здравствуйте, UnseriousSam, Вы писали:

US>Так чем больше ключей, тем быстрее и полнее понимание. Как считаешь? Иначе мы бы жили только в мире звуков, образов, или тактильных ощущений.


Безусловно. По-этому в редакторах кода есть подсветка синтаксиса, выделение skope-ов, да и вообще рекомендуется писать с отступами, конвенциями и пр. Но дальше этого не особенно получается пройти.
Я ненавижу Hibernate
Автор: Andrei N.Sobchuck
Дата: 08.01.08
!
Re[7]: Графическое программирование и здоровье
От: samius Япония http://sams-tricks.blogspot.com
Дата: 16.06.10 09:33
Оценка:
Здравствуйте, FR, Вы писали:

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


S>>Не могу себе представить выдумывание и заучивание 2-3х тысяч доменно ориентированных образов. Тут любого творца переклинит.


FR>Ну китайцы и японцы выучивают

FR>Но при этом их скорость чтения мало отличается от скорости чтения европейцев.

У японцев в ходу около 2500 иероглифов на все случаи жизни. Все что не входит в эти случаи они записывают слоговыми азбуками. Здесь же предлагается выдумывать свои образы под каждый объект/метод каждого проекта.
Re[9]: Графическое программирование и здоровье
От: UnseriousSam  
Дата: 16.06.10 09:34
Оценка:
Здравствуйте, Andrei N.Sobchuck, Вы писали:

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


US>>Так чем больше ключей, тем быстрее и полнее понимание. Как считаешь? Иначе мы бы жили только в мире звуков, образов, или тактильных ощущений.


ANS>Безусловно. По-этому в редакторах кода есть подсветка синтаксиса, выделение skope-ов, да и вообще рекомендуется писать с отступами, конвенциями и пр. Но дальше этого не особенно получается пройти.


А начинали с перфокарт.
Re[7]: Графическое программирование и здоровье
От: samius Япония http://sams-tricks.blogspot.com
Дата: 16.06.10 09:41
Оценка:
Здравствуйте, UnseriousSam, Вы писали:

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


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


US>>>Я графическое программирование представляю как процесс создания картины или мультика. А если просто, то вместо текстового языка использовать графический, где можно будет по полной развернуть свои творческие способности.


S>>Не могу себе представить выдумывание и заучивание 2-3х тысяч доменно ориентированных образов. Тут любого творца переклинит.


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

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

US>Кстати, очень даже можно было бы первым шагом перейти к литературному программированию Хотя смайлик лишний, так как этот термин уже ввел когда-то Дональд Кнут. В википедии есть статься. Там, кстати, литературное программирование называют грамотным.


Вот это гораздо реальнее, т.к. требования к программе все равно записаны "литературно" а не образами.
Re: Графическое программирование и здоровье
От: Mystic Украина http://mystic2000.newmail.ru
Дата: 16.06.10 10:20
Оценка: +3
Здравствуйте, UnseriousSam, Вы писали:

US>Что в итоге приведет к громадной экономии энергии, а следовательно и к лучшему здоровью, и к более счастливой и полноценной жизни.


Все строго наоборот, в результате длительной практики в какой-либо отрасли, отбрасывается все лишние энергозатраты в виде посторонних образов. Хорошо видно на примере шахмат: вначале ты мысленно передвигаешь фигурки по доске, а потом у тебя формируется некая абстракция вне всяких образов. Создается свой язык, которым ты в дальнейшем пользуешься. То же и математика и другие отрасли
Re: Графическое программирование и здоровье
От: UnseriousSam  
Дата: 16.06.10 10:37
Оценка: -1 :)
Давайте пофантазируем.
Хотели бы вы, чтобы, например, заказчик предъявил требования в виде двухчасового художественного фильма? Вы бы сидели в удобных креслах, на большом экране смотрели, что и как происходит в предметной области, которую впоследствии придется запрограммировать. А проще представьте, что вы чувствуете после просмотра хорошего фильма. Вы чувствуете подьем, вы полны энергии. Это естественная реакция организма на хорошую порцию хороших впечатлений.
Предположим, если ответ да, то тогда это пусть и недостижимый, но идеал, к которому можно стремиться.
Теперь представьте, что вас заставляют посмотреть двухчасовой текстовый фильм. Пусть кресла по-прежнему будут удобными. Для полноты ощущений автор решил использовать для самовыражения язык программирования. Когда появляется новый персонаж, на экране появляется объявление нового класса. Все взаимодействия между персонажами описываются вызовами функций. Не надо говорить, что для описания красочной обстановки, в которой происходит действие, в языке программирования просто нет никаких средств. Красочные спецэффекты, которыми так славится современная кинематография, буду представлены одним словом: взрыв, землетрясение и так далее. В итоге просмотр так называемого фильма превращается в сухое прочтение исходного кода. Постарайтесь сравнить ощущения.
Re[2]: Графическое программирование и здоровье
От: UnseriousSam  
Дата: 16.06.10 10:45
Оценка:
Здравствуйте, Mystic, Вы писали:

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


US>>Что в итоге приведет к громадной экономии энергии, а следовательно и к лучшему здоровью, и к более счастливой и полноценной жизни.


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


ОК. Замени фигуры на шахматной доске на первые буквы их названий. Пешка — П, Ферзь — Ф и так далее. А еще лучше на точку, палочку, кружок. И так играй. Хотя куда приятней играть в шахматы, в каждую фигуру которых мастер вложил всю свою душу.
Университетский преподаватель по математике говорил, что в математике ты или гений к своим — точно не помню — десяти, четырнадцати или около того, или уже никогда. Бывают, наверное, исключения. Но это только исключения. А все как раз благодаря тому, что впоследствии ты создаешь свой язык, которым в дальнейшем пользуешься. Полностью отрезаешь себя от получения новых впечатлений. Перестаешь создавать что-то новое, а просто превращаешься в робота, который только и умеет, что оперировать тем, чему успел научиться.
Re[2]: Графическое программирование и здоровье
От: UnseriousSam  
Дата: 16.06.10 10:59
Оценка:
Здравствуйте, Mystic, Вы писали:

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


US>>Что в итоге приведет к громадной экономии энергии, а следовательно и к лучшему здоровью, и к более счастливой и полноценной жизни.


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


Разговор про стимуляцию мозга. Какой бы язык ты себе не придумал, подсознание оперирует всем доступным набором: образы, звуки, краски и прочие ощущения, которые ты получаешь через органы чувств. И неважно, увидел ты слово или образ. Внутренне представление будет одинаковым. Только чтобы на слово надеть весь спектр данных, твоему мозгу придется здорово подтрудится, на что потратится огромное количество энергии. Ну а если человек свой мозг не задействует: увидел слово — значит слово — то мозг такого человека скуден. К творчеству никакого отношения он иметь не будет и ничего стоящего нового никогда не создаст. А чем оперировать ему? Сенсорная депривация — это лишение одного или нескольких органов чувств внешнего воздействия — приводит к депрессии.
Re[3]: Графическое программирование и здоровье
От: samius Япония http://sams-tricks.blogspot.com
Дата: 16.06.10 11:19
Оценка:
Здравствуйте, UnseriousSam, Вы писали:

US>Разговор про стимуляцию мозга. Какой бы язык ты себе не придумал, подсознание оперирует всем доступным набором: образы, звуки, краски и прочие ощущения, которые ты получаешь через органы чувств. И неважно, увидел ты слово или образ. Внутренне представление будет одинаковым. Только чтобы на слово надеть весь спектр данных, твоему мозгу придется здорово подтрудится, на что потратится огромное количество энергии. Ну а если человек свой мозг не задействует: увидел слово — значит слово — то мозг такого человека скуден. К творчеству никакого отношения он иметь не будет и ничего стоящего нового никогда не создаст. А чем оперировать ему? Сенсорная депривация — это лишение одного или нескольких органов чувств внешнего воздействия — приводит к депрессии.


Визуализируй, пожалуйста парсер, умеющий разбирать символ по переданному условию:
let p_pred p s =
    match s with
    | [] → Failed
    | h::t → if p h then Parsed(h, t) else Failed

Желательно так, чтобы у сведущих людей не возникало вопросов, когда они будут смотреть на образ.
Re[4]: Графическое программирование и здоровье
От: UnseriousSam  
Дата: 16.06.10 11:35
Оценка:
Здравствуйте, samius, Вы писали:

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


US>>Разговор про стимуляцию мозга. Какой бы язык ты себе не придумал, подсознание оперирует всем доступным набором: образы, звуки, краски и прочие ощущения, которые ты получаешь через органы чувств. И неважно, увидел ты слово или образ. Внутренне представление будет одинаковым. Только чтобы на слово надеть весь спектр данных, твоему мозгу придется здорово подтрудится, на что потратится огромное количество энергии. Ну а если человек свой мозг не задействует: увидел слово — значит слово — то мозг такого человека скуден. К творчеству никакого отношения он иметь не будет и ничего стоящего нового никогда не создаст. А чем оперировать ему? Сенсорная депривация — это лишение одного или нескольких органов чувств внешнего воздействия — приводит к депрессии.


S>Визуализируй, пожалуйста парсер, умеющий разбирать символ по переданному условию:

S>
S>let p_pred p s =
S>    match s with
S>    | [] → Failed
S>    | h::t → if p h then Parsed(h, t) else Failed
S>

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

Я не знаком с F#. С удовольствием постараюсь визуализировать что-нибудь попроще.
Я не предлагал уже готового решения. Надеялся, что мы вместе как раз подумаем над тем, как это могло бы выглядеть на практике.
Кстати, писатели не пишут рассказы от первой буквы до последней. Разве что кроме тех, кто записывает свой поток сознания. Они сначала придумывают героев, их характеры, их биографию. В общих чертах придумывают сюжет. Также обстановку, в которой будут происходить действия. Ты просто задай себе вопрос, почему литературное произведение намного интереснее читать, чем список героев, их характеров, их биографий, сюжет, который подан в общих чертах, и обстановку, описанную в трех словах.
Ты пришли пример попроще, можно на C#, мне самому интересно визуализировать.
Re: Графическое программирование и здоровье
От: sereginseregin Россия http://daremanager.sourceforge.net/ru/
Дата: 16.06.10 11:41
Оценка:
Здравствуйте, UnseriousSam

ИМХО программирование как процесс кодирования возник исторически. Первые компьютерщики мечтали, что компьютер будет с ними разговаривать. Стали придумывать команды близкие по написанию к естественной речи, типа "whyami". Дальше — больше, стали разрабатывать редакторы и компиляторы псевдо-естественных языков. Текстовая консоль и клавиатура — все что нужно было пытливому уму компьютерщика.

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

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

В принципе, нет необходимости собирать код программы в текстовом редакторе из набора символов с последующим лексическим и синтаксическим анализом. ИМХО можно, наверное, собирать программу в ином виде, типа визуальные блоки-команды, которые сразу готовы к выполнению. Только редакторов подходящих нет — эволюция пошла не тем путем.
Re[4]: Графическое программирование и здоровье
От: Klapaucius  
Дата: 16.06.10 11:46
Оценка:
Здравствуйте, samius, Вы писали:

S>Визуализируй, пожалуйста парсер...


А что такого в визуализации парсеров? Визуализация грамматики — это, фактически, визуализация парсера.
... << RSDN@Home 1.2.0 alpha 4 rev. 1446>>
'You may call it "nonsense" if you like, but I'VE heard nonsense, compared with which that would be as sensible as a dictionary!' (c) Lewis Carroll
Re[5]: Графическое программирование и здоровье
От: samius Япония http://sams-tricks.blogspot.com
Дата: 16.06.10 11:59
Оценка:
Здравствуйте, UnseriousSam, Вы писали:

US>Я не знаком с F#. С удовольствием постараюсь визуализировать что-нибудь попроще.

На счет чего-нибудь попроще я как-то не сомневался. Легко вызвать ассоциацию со списком, словарем, GC и посетителем. А как насчет того, для чего образов нет? Читая код я понимаю (чаще всего) как ведет себя та или иная сущность, даже если я в глаза ничего подобного не видел. Глядя на образ налогового инспектора я возможно догадаюсь что это посетитель (без пол-литра вряд ли), но особенности его реализации я не увижу из такого образа. Но увижу из кода, когда посмотрю на этот код как на совокупность текстовых образов.

US>Я не предлагал уже готового решения. Надеялся, что мы вместе как раз подумаем над тем, как это могло бы выглядеть на практике.

Меня удовлетворяют существующие решения.

US>Кстати, писатели не пишут рассказы от первой буквы до последней. Разве что кроме тех, кто записывает свой поток сознания. Они сначала придумывают героев, их характеры, их биографию. В общих чертах придумывают сюжет. Также обстановку, в которой будут происходить действия. Ты просто задай себе вопрос, почему литературное произведение намного интереснее читать, чем список героев, их характеров, их биографий, сюжет, который подан в общих чертах, и обстановку, описанную в трех словах.

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

US>Ты пришли пример попроще, можно на C#, мне самому интересно визуализировать.

Пусть это будет генератор простых чисел в абстрактном виде без деталей реализации, оформленный в виде IEnumerable<int>.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.