Re[7]: Инструменты
От: VladD2 Российская Империя www.nemerle.org
Дата: 25.11.10 16:19
Оценка:
Здравствуйте, FR, Вы писали:

FR>Ну если так то только лисп и частично форт живые

FR>Немерле еще толком не родился остальные в коме

Так и есть. Но, надеюсь, родится. В конце концов не он, так кто-то должен его дело продолжить.

FR>Ну там все-таки другое, синтаксис не трогается.


В Руби получается так, что хотя и ограничено, но можно эмулировать другой синтаксис. Плюс кайф макросов не только в изменении синтаксиса. Пожалуй что изменение семантики даже по-важнее будет. Хотя конечно оптимально когда можно менять и то, и то и по возможности с минимумом ограничений.

VD>>Ближе, но все же к макросам это не имеет отношение. Возможности не сопоставимы.


FR>Так это и есть разновидность макросов парсер + синтаксический препроцессор.


Не. Это именно что синтаксический препроцессор. Макры, по крайней мере немерловые — это значительно больше. Я даже не знаю как это объяснить. Это нужно просто попробовать и прочувствовать.

FR>Возможностей конечно меньше чем у макросов в стиле Лиспа/Немерли но на практике очень большую часть

FR>их использования перекрывают, например вы тут где-то недавно приводили примеры встраивания XML/HTML вот
FR>тоже самое http://www.openmirage.org/blog/introduction-to-htcaml или для SQL http://ocsigen.org/macaque/

Макры могут намного больше. Хотя и это конечно тоже. Немерловая макра может взаимодействовать с компилятором. Даже когда задача решается чисто синтаксическим препроцессированием, все равно полноценные макросы позволяют сделать решение более удобным.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: Не, программист - не инженер
От: IT Россия linq2db.com
Дата: 25.11.10 22:45
Оценка:
Здравствуйте, SchweinDeBurg, Вы писали:

CB>>Программист – это, скорее, гуманитарий, который выражает свои мысли на одном из языков программирования.

SDB>+1000

-1001
Если нам не помогут, то мы тоже никого не пощадим.
Re[4]: Не, программист - не инженер
От: Кэр  
Дата: 26.11.10 01:47
Оценка:
CB>>>Программист – это, скорее, гуманитарий, который выражает свои мысли на одном из языков программирования.
SDB>>+1000

IT>-1001 * 2


Re[4]: Не, программист - не инженер
От: Кэр  
Дата: 26.11.10 01:50
Оценка:
Здравствуйте, craft-brother, Вы писали:

S>>А при чем тут перечисленные науки? Я бы назвал — теория информации, теория игр, теория принятия решений, теория управления, кибернетика и много чего еще.


CB>Ок. Тогда, пожалуйста, приведи формулу или инженерную методику из этих наук, которая позволила бы мне дать оценку производительности, надежности и доступности разрабатываемой новой системы по ее архитектуре


А почему именно это и какой вы пытаетесь сделать из этого вывод? И как из этого следует что программисты — это, вдруг, гуманитарии? Вы, кстати, не гуманитарий случаем?
Re[5]: Не, программист - не инженер
От: craft-brother Россия  
Дата: 26.11.10 05:51
Оценка:
Здравствуйте, Кэр, Вы писали:

Кэр>Здравствуйте, craft-brother, Вы писали:


S>>>А при чем тут перечисленные науки? Я бы назвал — теория информации, теория игр, теория принятия решений, теория управления, кибернетика и много чего еще.


CB>>Ок. Тогда, пожалуйста, приведи формулу или инженерную методику из этих наук, которая позволила бы мне дать оценку производительности, надежности и доступности разрабатываемой новой системы по ее архитектуре


Кэр>А почему именно это и какой вы пытаетесь сделать из этого вывод?


Вывод простой — нет теории, нет инженерии.

Кэр>И как из этого следует что программисты — это, вдруг, гуманитарии?


Не из этого следует. То что программист — гуманитарий следует из того, что он, как и писатель, пишет свои мысли на ЯП, из того, что в программировании EQ гораздо важнее IQ.

Кэр>Вы, кстати, не гуманитарий случаем?


Нет, мех-мат МГУ. До перехода в коммерческую разработку ПО двадцать лет проработал инженером. Есть с чем сравнивать

И еще. Время вхождения в инженерию, это когда ты заработал авторитет среди коллег и тебя слушают не только из вежливости, а с искренним интересом, составляет, примерно, 10 лет. Вчерашний студент в программировании уже через полгода начинает приносить пользу, а еще через год успешной работы его рыночная стоимость возрастает в 2 раза.
Re[6]: Не, программист - не инженер
От: FR  
Дата: 26.11.10 06:19
Оценка:
Здравствуйте, craft-brother, Вы писали:

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


В программировании выход на серьезный уровень те же 10 лет http://www.williamspublishing.com/21-days.html
Re[5]: Не, программист - не инженер
От: FR  
Дата: 26.11.10 06:21
Оценка:
Здравствуйте, Кэр, Вы писали:

Кэр>А почему именно это и какой вы пытаетесь сделать из этого вывод? И как из этого следует что программисты — это, вдруг, гуманитарии? Вы, кстати, не гуманитарий случаем?


По моему программисты скорее ближе к математикам и гуманитарием назвать нельзя и на полноценного технаря не тянет
Re[6]: Не, программист - не инженер
От: FR  
Дата: 26.11.10 06:27
Оценка:
Здравствуйте, craft-brother, Вы писали:

CB>Вывод простой — нет теории, нет инженерии.


19 век — век инженеров, но теории тогда во многих отраслях не хватало, практика однако работала.

Кэр>>И как из этого следует что программисты — это, вдруг, гуманитарии?


CB>Не из этого следует. То что программист — гуманитарий следует из того, что он, как и писатель, пишет свои мысли на ЯП, из того, что в программировании EQ гораздо важнее IQ.


С писателем очень большая разница, у него нет абсолютно бесстрастного судью который говорит не верю error XXX line YYY
Писатель не создает самостоятельно работающих моделей, только описывает мир.
Re[6]: Не, программист - не инженер
От: Sinix  
Дата: 26.11.10 06:55
Оценка: 15 (3) +2
Здравствуйте, craft-brother, Вы писали:

CB>Не из этого следует. То что программист — гуманитарий следует из того, что он, как и писатель, пишет свои мысли на ЯП, из того, что в программировании EQ гораздо важнее IQ.


Вообще-то точки над i расставили в 68м. Вы почитайте тезисы — никуда особо от граблей не ушли

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

Фактически, до "нормальной" эксплуатации ПО добирается только став легаси. В результате имеем помесь КБ и технички-аварийки, со всеми вытекающими
Re[6]: Не, программист - не инженер
От: Кэр  
Дата: 26.11.10 07:26
Оценка: 1 (1) +6
Здравствуйте, craft-brother, Вы писали:

S>>>>А при чем тут перечисленные науки? Я бы назвал — теория информации, теория игр, теория принятия решений, теория управления, кибернетика и много чего еще.


CB>>>Ок. Тогда, пожалуйста, приведи формулу или инженерную методику из этих наук, которая позволила бы мне дать оценку производительности, надежности и доступности разрабатываемой новой системы по ее архитектуре


Кэр>>А почему именно это и какой вы пытаетесь сделать из этого вывод?


CB>Вывод простой — нет теории, нет инженерии.


Теории хватает Просто не так много, как, например, в авиа-строении.

Но так вы дайте индустрии хотя бы сотню лет, чтобы накопить ключевых знаний.

Лично мне башню оторвало надолго серии, где показывали что такое на самом деле LINQ, что такое монады и как они тут рулят, как оно оборачивается в Rx, какие есть области применения. Я тут заобщался с Эриком Мейером (мега-дядька!) он утверждает и показывает, что Rx на самом деле решает проблему сложности параллельного программирования — я это хотел тут выложить и обсудить, просто руки еще не дошли.

К чему это я. А да — много еще вещей есть на свете, друг Горацио... Будет вам теория, будет. Индустрия просто молодая.

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

Кэр>>И как из этого следует что программисты — это, вдруг, гуманитарии?


CB>Не из этого следует. То что программист — гуманитарий следует из того, что он, как и писатель, пишет свои мысли на ЯП, из того, что в программировании EQ гораздо важнее IQ.


Офигеть. Ну давайте теперь сравнительный анализ делать по отблеску оберточной фольги Не судите программиста по обложке

CB>Нет, мех-мат МГУ. До перехода в коммерческую разработку ПО двадцать лет проработал инженером. Есть с чем сравнивать


Хм. А сравнения вы приводите какие-то уж совсем. Неинженерные

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


Ага. Смотрите выше про молодую индустрию.
Re[7]: Не, программист - не инженер
От: FR  
Дата: 26.11.10 07:39
Оценка:
Здравствуйте, Кэр, Вы писали:


Кэр>Теории хватает Просто не так много, как, например, в авиа-строении.


Если брать математическое (физико-математическое для авиа) обоснование, то теоретически программирование
гораздо лучше обосновано.
Если брать методики организации производства то их тоже очень много, только в отличии от индустриального
производства они малоэффективны.

Кэр>Но так вы дайте индустрии хотя бы сотню лет, чтобы накопить ключевых знаний.


Другим индустриям хватило десятков лет.

Кэр>Лично мне башню оторвало надолго серии, где показывали что такое на самом деле LINQ, что такое монады и как они тут рулят, как оно оборачивается в Rx, какие есть области применения. Я тут заобщался с Эриком Мейером (мега-дядька!) он утверждает и показывает, что Rx на самом деле решает проблему сложности параллельного программирования — я это хотел тут выложить и обсудить, просто руки еще не дошли.


Это все было в 70-ых — 80ых годах.

Кэр>К чему это я. А да — много еще вещей есть на свете, друг Горацио... Будет вам теория, будет. Индустрия просто молодая.


На фоне других уже старая, атомной промышленности например по годам практически столько же. А микроэлектроника гораздо моложе.

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


Это скорее подход инженера конструктора или специалиста ОКР а не простого инженера.

Кэр>Ага. Смотрите выше про молодую индустрию.


Угу в 68 http://www.rsdn.ru/forum/philosophy/4054207.1.aspx
Автор: Sinix
Дата: 26.11.10
была молодая а не сейчас.
Re[7]: Не, программист - не инженер
От: Sinix  
Дата: 26.11.10 07:44
Оценка: +1
Здравствуйте, Кэр, Вы писали:

Поддержу.

Кэр>Теории хватает Просто не так много, как, например, в авиа-строении.

Увы, не всё так хорошо. Во "взрослых" КБ теория _очень_ тесно соседствует с эмпирикой, особенно для для гидродинамики|гиперзвуковой аэродинамики|нагрузочных испытаний.

Кэр>К чему это я. А да — много еще вещей есть на свете, друг Горацио... Будет вам теория, будет. Индустрия просто молодая.

Будет. Но для _выхлопа_ от теории придётся дождаться, пока её не спрячут за чем-то внешне простым и понятным, как тот же Rx. Мейнстрим, увы

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


Задница в том, что мы тут вместе смешиваем и информатику со всеми светлыми идеями, и практически возникающие проблемы, и программную инженерию, несколько от жизни оторванную. И, поскольку все свободно перескакивают с уровня на уровень, холиварить можно до бесконечности
Re[7]: Не, программист - не инженер
От: craft-brother Россия  
Дата: 26.11.10 07:53
Оценка: +1
Здравствуйте, Кэр, Вы писали:

Кэр>Теории хватает Просто не так много, как, например, в авиа-строении.


Кэр>Но так вы дайте индустрии хотя бы сотню лет, чтобы накопить ключевых знаний.


Кэр>К чему это я. А да — много еще вещей есть на свете, друг Горацио... Будет вам теория, будет. Индустрия просто молодая.


Согласен, молодая. Просто, ИМХО, программирование — новый вид человеческой деятельности. В разработке ПО психологии и социологии больше, чем математики и кибернетики. И самое существенное продвижение в нашей отрасли, полагаю будет, когда мы поймем как человек строит ментальные модели (100% — психология) и создадим адекватный язык их описания. Тогда мы получим и формализацию знаний,и формальные спецификации ПО, и DSL. Правда, насчет прорыва в области искусственного интеллекта, сильно сомневаюсь

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


ИМХО, это цикл работы любого научного работника. Не только инженера.
Re[4]: Не, программист - не инженер
От: SchweinDeBurg Россия http://zarezky.spb.ru/
Дата: 26.11.10 08:14
Оценка:
Здравствуйте, IT, Вы писали:

IT>-1001


Эм-м-м... за линейкой идти, Игорь?
[ posted via RSDN@Home 1.1.4 stable SR1 r568, accompanied by silence ]
- Искренне ваш, Поросенок Пафнутий ~ ICQ#116846877
In Windows, there’s always a catch… © Paul DiLascia
Re[8]: Не, программист - не инженер
От: Sinix  
Дата: 26.11.10 08:34
Оценка:
Здравствуйте, craft-brother, Вы писали:

CB>Просто, ИМХО, программирование — новый вид человеческой деятельности. В разработке ПО психологии и социологии больше, чем математики и кибернетики. И самое существенное продвижение в нашей отрасли, полагаю будет, когда мы поймем как человек строит ментальные модели (100% — психология) и создадим адекватный язык их описания. Тогда мы получим и формализацию знаний,и формальные спецификации ПО, и DSL. Правда, насчет прорыва в области искусственного интеллекта, сильно сомневаюсь


Ну да, это один подход.

Второй — что сложно не программирование, а сами решаемые задачи.
С попеременно модными вариантами:
1. Учимся думать и пытаемся схитрить.
2. Делаем всё максимально примитивно, чтобы не добавлять сложности.

Пока что моден второй, с переходящими хайпами на agile/TDD/NoSQL/Cloud/SaaS. Не, ничего плохого, но когда _массово_ вдалбливается превосходство упрощённых частных решений над общими аля:
— компы — слишком сложно, будущее за мобильными интерфейсами "тыкни пальцем".
— захостить два сервиса рядом — сложно, проще написать виртуалку.
— написать спецификацию — сложно, проще сделать как попросили, если что — виноват заказчик.
— поставить программу — сложно, проще щёлкнуть по ссылке.
— хранить локально документы — сложно, проще отдать их хостеру.
— написать запрос на SQL — сложно, проще — EAV.

и в результате — обратный переход от качества к количеству — раздражает

Только разработка ПО тут не причём — общий тренд, чтоб его
Re[8]: Не, программист - не инженер
От: Klapaucius  
Дата: 26.11.10 09:01
Оценка: 7 (1) +2
Здравствуйте, FR, Вы писали:

FR>Угу в 68 http://www.rsdn.ru/forum/philosophy/4054207.1.aspx
Автор: Sinix
Дата: 26.11.10
была молодая а не сейчас.


Я думаю, что молодость индустрии измеряется не годами. Хороший критерий молодости, как мне кажется, это как раз важность специального образования. Пока гитарист может работать программистом — программирование, как вид инженерной деятельности, еще не созрело. Детство индустрии заканчивается, когда на смену Эдисонам приходят Теслы.
... << RSDN@Home 1.2.0 alpha 4 rev. 1476>>
'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[9]: Не, программист - не инженер
От: FR  
Дата: 26.11.10 09:26
Оценка:
Здравствуйте, Klapaucius, Вы писали:

K>Я думаю, что молодость индустрии измеряется не годами. Хороший критерий молодости, как мне кажется, это как раз важность специального образования. Пока гитарист может работать программистом — программирование, как вид инженерной деятельности, еще не созрело.


Хирург требует очень продолжительного и сложного образования, но не занимается инженерной деятельностью. При этом любой гитарист вполне может
залепить рану пластырем но почему-то никто его врачом при этом не называет.

K>Детство индустрии заканчивается, когда на смену Эдисонам приходят Теслы.


Значит софтостроение ни индустрия.
Re[9]: Не, программист - не инженер
От: Sinix  
Дата: 26.11.10 09:37
Оценка:
Здравствуйте, Klapaucius, Вы писали:

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


Как _инженер_ Эдисон куда успешнее Теслы С такой точки зрения — молода вся инженерия.

Увы, проблема не в технологиях, а в людях. Главная претензия — фигня выходит — обусловлена тем, что мы пытаемся детерминированно решать сложные задачи, используя мизерные (сравнительно) ресурсы.

Хотя нет, выходит даже не фигня, а примитивный аналог природных систем — работа на случайных побочных эффектах при высокой устойчивости к единичным сбоям.
Re[10]: Не, программист - не инженер
От: Klapaucius  
Дата: 26.11.10 09:45
Оценка:
Здравствуйте, FR, Вы писали:

K>>Я думаю, что молодость индустрии измеряется не годами. Хороший критерий молодости, как мне кажется, это как раз важность специального образования. Пока гитарист может работать программистом — программирование, как вид инженерной деятельности, еще не созрело.


FR>Хирург требует очень продолжительного и сложного образования, но не занимается инженерной деятельностью.


Я говорю сейчас о том, как определить зрелость инженерной деятельности, а не о том, является ли программирование инженерной дейтельностью.

FR>Значит софтостроение ни индустрия.


Значит софтостроение — формирующаяся индустрия. Но это временно.
... << RSDN@Home 1.2.0 alpha 4 rev. 1476>>
'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[10]: Не, программист - не инженер
От: Klapaucius  
Дата: 26.11.10 09:55
Оценка:
Здравствуйте, Sinix, Вы писали:

S>Как _инженер_ Эдисон куда успешнее Теслы С такой точки зрения — молода вся инженерия.


Эдисон был успешен в формирующейся индустрии. В индустрии сформировавшейся Эдисон — вообще не инженер.

S>Увы, проблема не в технологиях, а в людях. Главная претензия — фигня выходит — обусловлена тем, что мы пытаемся детерминированно решать сложные задачи, используя мизерные (сравнительно) ресурсы.


Используемые ресурсы зависят не только от сложности решаемой задачи, но и от требований к надежности получаемого в результате изделия. В некоторых случаях ресурсы влкдываются вполне значительные, но большинство ПО — наименее надежный продукт человеческой цивилизации. Но это пройдет по мере того, как ПО будет играть в нашей жизни все более важную роль.
... << RSDN@Home 1.2.0 alpha 4 rev. 1476>>
'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
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.