Главный вывод из встречи: без бокала нет вокала. Т.е. без пива люди
как-то стесняются делиться своими наблюдениями в области высоких
технологий :) Поэтому из "Эльфа" (АКА Карабах), где дают отличные
бутерброды, мы переместились в "Токо-Токо", где куски пиццы по размерам
почти не превосходят помянутые бутерброды, а стоят почти вдвое дороже,
но зато в последнем заведении продают пиво.
Оригинал этого письма находится в Гренландии
Ни о MVC в виде Struts и в ASP.NET, ни об идее убеждения руководства в необходиомсти рефакторинга не говорили.
Беседа вращалась вокруг LISP-а как истинно гибкого языка программирования. Для наших алголоподобных мозгов самое оно, чтобы поломать устоявшиеся паттерны :) Цитаты:
"XML - жалкое подобие левой руки LISP-а"
"ЛИСП настолько гибок, что даже слишком"
"Четыре строчки на ЛИСПе можно пытаться понять минут 15"
"ЛИСП всех поставит на колени и заставит сосать"
"Сначала автор ("Gentle Introduction" "Lisp Maalima" ("Мир Лиспа")) маскируется, говорит, что в ЛИСП
всё так же, как и в "нормальных" языках - вот вам присваивание
переменной - setq... Но потом становится понятно, что что-то здесь
совсем не так"
"Налогоплательщиков, всё равно новых нарожают"
"если мы не освоим миллион в этом году, нам не выделят миллиона в следующем"
Вова снова перечислил лучшие книги:
"Common LISP - A Gentle Introduction to Symbolic Computation.pdf" "Digital Press - Common Lisp - The Language, 2nd Ed (Guy Steele) - 1990.pdf" "MIT Press - Structure and Interpretation of Computer Programs.pdf".
По рекомендации Сергея, книги по LISP хорошо идут в интервале от 9 часов вечера до часу ночи, когда взбодрить мозг чем-то менее экзотическим уже не удаётся.
Вова пишет: Ну, сначала этому [функциональному программированию без сайд-эффектов] можно и у 3-го Страуструпа научиться. Там в некоторых обобщённых алгоритмах тоже используются функциональные объекты. Только более простенькие, в голове как-то укладывающиеся :>
Вова рассказал о libboost_lambda, которая даёт возможность функционального (мета)программирования на C++ с помощью шаблонов - потому что язык шаблонов полон по Тьюрингу. Конструкции этой библиотеки разворачиваюся в совершенно нереальные по злобности конструкции C++ :) Но чтобы их понять, нужно научиться ЛИСПу - писать с применением функционального программирования и без side effects.
Сергей рассказал о конференции ACM: "Ооо! Ааа! Круто!". Кроме этого, рассказал о схеме рассмотрения докладов на конференции (зубры сидят в расслабленных позах и меланхолично разжевывают текст статьи, а автор изображает молчаливую бабочку на стене) и двух наиболее заинтересовавших статьях. Статьи рассказывают: о паттернах
Я рассказал о репетиции "Вавилонского эксперимента №3". Ещё раз прошу прощения у всех, кому не дал знать о нём заранее, там можно было записаться 8(
Эксперимент основан на двух идеях: а) разработка дизайна молча, что заставляет разработчика рисовать на UML и SPEM диаграммы, понятные без слов; и б) reverse tracebility UML-дизайна, когда критерием качества UML-модели является адекватный реверс-инженеринг исходного ТЗ в русский/английский текст без потери существенных для системы подробностей. Для разминки играли в "крокодила", было весело. Да, школа ЧГК в смысле "крокодила" умеет многое :) Как старый солдат, показал людям слова "плюрализм" и "турбулентность". Дима Маленко, к счастью, никому не загадал "параметрической полиморфизм".
Дима Бочоришвили помянул XMI - методику отображения MOF (Meta-Object facility, метаметамодель для UML и иже) на XML, т.е. перевода человеко-читаемого UML в машино-читаемый и валидируемый XML. Что, опять же, не гарантирует правильности дизайна.
Вова заинтересовался CMM. Я пытался пересказать анекдот о CMM level 0 и -1, но не преуспел, потому что забыл характеристики уровней. Их, конечно, можно вывести, поглядев вокруг, но математическую стройность определениям придать сложно.
Мимоходом проехались по MSF. Высказали мысль, что эта технология, да и большинство других более ориентированы на маркетинг - громкие слова типа "Zero defect development", - чем на реальную технологическую надёжность.
Под конец Сергей помянут технологию AJAX - джаваскрипт для динамического изменения контента странички без её перезагрузки. Тут краткое определение, на IBM и в Википедии - хорошие статьи. Поговорили о ней, потом о "программировании под браузер" и веб-клиентах вообще. Что Microsoft не даст развиться веб-приложениям. Что в вебе есть Rich Text редакторы, но можно ли их использовать вместо Word? Прожуёт ли оно хотя бы 2М текста?
Как характерных представителей привети примеры службы gmail и greasemonkey. В greasemonkey (в Mozilla Firefox) есть свой прикол - "активный браузинг" с помощью плагина Platypus. Вы можете отредактировать HTML странички, и потом, посещая её снова, ваши изменения будут снова накладываться на эту страницу.
Пришли к выводу, что браузер как платформа слишком нестабилен - как в смысле совместимости, так и в смысле банальных крэшей.
С другой стороны, посмотрите на это - целая ОС в браузере. Взято из примеров использования AJAX в Википедии. Кстати, там и текстовый процессор есть...
Кто упоминал задачку о C# - "сколько методов может быть вызвано в этих трёх строчках"?
Кто что говорил о трёх буквах TMS?
Вот что. Женщинам, детям, слабонервным и несовершеннолетним не читать. И это тоже.
Кто что сказал о Haskell?
Вова пишет:
До крайности математичный язык. Очень краткий в изложении и мощный. Ещё б кто мне в пяти словах рассказал про "теорию категорий" :>
Вот буквально сегодня напоролся на статейку о том, что, мол, Ява пока ещё где-то применяется, но скоро прийдут Ruby и SmallTalk, и все более-менее сообразительные на них смигрируют :>
http://www.onjava.com/lpt/a/6241
Так там в комментах вылез Хаскеллист и сказал насчёт хвалёной краткости скриптовых языков :
"You say you want a list of Fibonacci's numbers? How about all of them...
...But maybe you only want to print out the first ten?...
...All that conciseness plus polymorphic static types which are automatically infered for you so you don't have to write them down.
"Или вот, пример имени Димы Маленко (нашёл аналогичный на http://en.wikipedia.org/wiki/Quicksort#Haskell ) :
Ещё было говорено про Ruby on Rails - Ruby on Rails - типа сверхмощный webapp-framework. (vic: Фаулер его очень хвалит) Там вам и AOP, и DRY, и привязка к DB без боли, и пр. Статейки на Oreilly : Ruby on rails Ruby on Rails and AJAX
Ну и про всякие webapp-frameworks попроще - CMSы типа zope/plone/drupal/quixote - Zope, Plone, Drupal, Quixote, Quixote
Оригинал этого письма находится в Гренландии
Ни о MVC в виде Struts и в ASP.NET, ни об идее убеждения руководства в необходиомсти рефакторинга не говорили.
Беседа вращалась вокруг LISP-а как истинно гибкого языка программирования. Для наших алголоподобных мозгов самое оно, чтобы поломать устоявшиеся паттерны :) Цитаты:
"XML - жалкое подобие левой руки LISP-а"
"ЛИСП настолько гибок, что даже слишком"
"Четыре строчки на ЛИСПе можно пытаться понять минут 15"
"ЛИСП всех поставит на колени и заставит сосать"
"Сначала автор (
"Налогоплательщиков, всё равно новых нарожают"
"если мы не освоим миллион в этом году, нам не выделят миллиона в следующем"
Вова снова перечислил лучшие книги:
"Common LISP - A Gentle Introduction to Symbolic Computation.pdf" "Digital Press - Common Lisp - The Language, 2nd Ed (Guy Steele) - 1990.pdf" "MIT Press - Structure and Interpretation of Computer Programs.pdf".
По рекомендации Сергея, книги по LISP хорошо идут в интервале от 9 часов вечера до часу ночи, когда взбодрить мозг чем-то менее экзотическим уже не удаётся.
Вова пишет: Ну, сначала этому [функциональному программированию без сайд-эффектов] можно и у 3-го Страуструпа научиться. Там в некоторых обобщённых алгоритмах тоже используются функциональные объекты. Только более простенькие, в голове как-то укладывающиеся :>
Вова рассказал о libboost_lambda, которая даёт возможность функционального (мета)программирования на C++ с помощью шаблонов - потому что язык шаблонов полон по Тьюрингу. Конструкции этой библиотеки разворачиваюся в совершенно нереальные по злобности конструкции C++ :) Но чтобы их понять, нужно научиться ЛИСПу - писать с применением функционального программирования и без side effects.
Сергей рассказал о конференции ACM: "Ооо! Ааа! Круто!". Кроме этого, рассказал о схеме рассмотрения докладов на конференции (зубры сидят в расслабленных позах и меланхолично разжевывают текст статьи, а автор изображает молчаливую бабочку на стене) и двух наиболее заинтересовавших статьях. Статьи рассказывают: о паттернах
Я рассказал о репетиции "Вавилонского эксперимента №3". Ещё раз прошу прощения у всех, кому не дал знать о нём заранее, там можно было записаться 8(
Эксперимент основан на двух идеях: а) разработка дизайна молча, что заставляет разработчика рисовать на UML и SPEM диаграммы, понятные без слов; и б) reverse tracebility UML-дизайна, когда критерием качества UML-модели является адекватный реверс-инженеринг исходного ТЗ в русский/английский текст без потери существенных для системы подробностей. Для разминки играли в "крокодила", было весело. Да, школа ЧГК в смысле "крокодила" умеет многое :) Как старый солдат, показал людям слова "плюрализм" и "турбулентность". Дима Маленко, к счастью, никому не загадал "параметрической полиморфизм".
Дима Бочоришвили помянул XMI - методику отображения MOF (Meta-Object facility, метаметамодель для UML и иже) на XML, т.е. перевода человеко-читаемого UML в машино-читаемый и валидируемый XML. Что, опять же, не гарантирует правильности дизайна.
Вова заинтересовался CMM. Я пытался пересказать анекдот о CMM level 0 и -1, но не преуспел, потому что забыл характеристики уровней. Их, конечно, можно вывести, поглядев вокруг, но математическую стройность определениям придать сложно.
Мимоходом проехались по MSF. Высказали мысль, что эта технология, да и большинство других более ориентированы на маркетинг - громкие слова типа "Zero defect development", - чем на реальную технологическую надёжность.
Под конец Сергей помянут технологию AJAX - джаваскрипт для динамического изменения контента странички без её перезагрузки. Тут краткое определение, на IBM и в Википедии - хорошие статьи. Поговорили о ней, потом о "программировании под браузер" и веб-клиентах вообще. Что Microsoft не даст развиться веб-приложениям. Что в вебе есть Rich Text редакторы, но можно ли их использовать вместо Word? Прожуёт ли оно хотя бы 2М текста?
Как характерных представителей привети примеры службы gmail и greasemonkey. В greasemonkey (в Mozilla Firefox) есть свой прикол - "активный браузинг" с помощью плагина Platypus. Вы можете отредактировать HTML странички, и потом, посещая её снова, ваши изменения будут снова накладываться на эту страницу.
Пришли к выводу, что браузер как платформа слишком нестабилен - как в смысле совместимости, так и в смысле банальных крэшей.
С другой стороны, посмотрите на это - целая ОС в браузере. Взято из примеров использования AJAX в Википедии. Кстати, там и текстовый процессор есть...
Кто упоминал задачку о C# - "сколько методов может быть вызвано в этих трёх строчках"?
Кто что говорил о трёх буквах TMS?
Вот что. Женщинам, детям, слабонервным и несовершеннолетним не читать. И это тоже.
Кто что сказал о Haskell?
Вова пишет:
До крайности математичный язык. Очень краткий в изложении и мощный. Ещё б кто мне в пяти словах рассказал про "теорию категорий" :>
Вот буквально сегодня напоролся на статейку о том, что, мол, Ява пока ещё где-то применяется, но скоро прийдут Ruby и SmallTalk, и все более-менее сообразительные на них смигрируют :>
http://www.onjava.com/lpt/a/6241
Так там в комментах вылез Хаскеллист и сказал насчёт хвалёной краткости скриптовых языков :
"You say you want a list of Fibonacci's numbers? How about all of them...
fibs = 0 : 1 : (zipWith (+) fibs (tail fibs))...But maybe you only want to print out the first ten?...
main = print (take 10 fibs)...All that conciseness plus polymorphic static types which are automatically infered for you so you don't have to write them down.
"Или вот, пример имени Димы Маленко (нашёл аналогичный на http://en.wikipedia.org/wiki/Quicksort#Haskell ) :
quicksort [] = []
quicksort (x:xs) = quicksort [y|y<-xs,y<x]
++ [x] ++
quicksort [y|y<-xs,y>=x]
Ещё было говорено про Ruby on Rails - Ruby on Rails - типа сверхмощный webapp-framework. (vic: Фаулер его очень хвалит) Там вам и AOP, и DRY, и привязка к DB без боли, и пр. Статейки на Oreilly : Ruby on rails Ruby on Rails and AJAX
Ну и про всякие webapp-frameworks попроще - CMSы типа zope/plone/drupal/quixote - Zope, Plone, Drupal, Quixote, Quixote
Tags:
(no subject)
21/10/05 04:57 (UTC)(no subject)
21/10/05 05:02 (UTC)(no subject)
21/10/05 05:14 (UTC)