Давайте поговорим об инструментах. Я очень надедеюсь, что большинство мужкого населения на этом форуме являются мужчинами. Ну, в плане того, что от вида кусачек не падают в обморок, а более того — знают с какой стороны их надо брать, чтобы было типа круто.
Вот вам два инструмента:
Слева — дешевый китайский зажим за 5 баксов, кстати, очень удобный для колки орехов
Справа — православный американский универсальный гламурный Leatherman. Я от него тащусь — в кармане два ножика и пила и пассатижи с кусачками и три отвертки. Офигительный тул, и главное — сделан очень качественно, ни малейшего люфта.
Но о чем это я? Простейшая задача — перекусить твердый стальной пруток 2мм диаметром. Ну, типа сетки-рабицы. Так вот — нормальный обычный человек при помощи этого Летсермена этого сделать не сможет — сил не хватит. А вот дешевым китайским зажимом — запросто перекусывается! Сам проверял. Правда, зажима хватает на 4-5 перекусов, после чего он плющится, ибо дешевый и сделан из мягкого сплава. Но это не важно.
А важно то, собственно, к чему это я? А важно то, что не бывает универсальных инструментов. Универсальный инструмент противоречил бы законам природы, так же, как универсальный растворитель — его просто не в чем было бы хранить!
Поэтому и в программизме так же — нет и не может быть универсального средства. Для бизнес-логики наилучшим было бы что-то типа C#, может быть, Nemerle как офигитиельно классная идея. Но извините, для научных расчетов все равно рулит Фортран! Ни C++, ни C#, ни Java — там просто рядом не стояли (а, да, есть Питон в качестве скриптового языка, но это не важно). Для гейм-рендеринга — C++ и ничего другого.
Так что давайте не будем мечтать об абсолютно универсальном языке — он невозможен так же как невозможен универсальный растворитель. Я это к чему — тут какая-то локальная войнушка по поводу Немерле. Я абсолютно против банеров типа "не нужен" — это тупо и оскорбительно. Оскорбительно прежде всего для владельца этого постера — сразу видно, что человек неадекватен. С другой стороны, немерлисты смами напоролись — ибо очень уж агрессивно стали орать.
Чем дольше я живу, тем сильнее убеждаюсь — нету в природе такой профессии как Программист, нету. Есть профессия Инженер. С удовольствием послушаю возражения, что типа "настоящий программист — это ученый" или "настоящий программист — это творческая личность". Нет, люди. Если ты программист — ты инженер и никак иначе.
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
Здравствуйте, McSeem2, Вы писали:
MS>Чем дольше я живу, тем сильнее убеждаюсь — нету в природе такой профессии как Программист, нету. Есть профессия Инженер. С удовольствием послушаю возражения, что типа "настоящий программист — это ученый" или "настоящий программист — это творческая личность". Нет, люди. Если ты программист — ты инженер и никак иначе.
Т.е. у вас строго можно быть одним из трёх: или инжренером, или учёным или творческой личностью?
И имхо инженер — не профессия ибо, более общее понятие.
Здравствуйте, McSeem2, Вы писали:
MS>Чем дольше я живу, тем сильнее убеждаюсь — нету в природе такой профессии как Программист, нету. Есть профессия Инженер. С удовольствием послушаю возражения, что типа "настоящий программист — это ученый" или "настоящий программист — это творческая личность". Нет, люди. Если ты программист — ты инженер и никак иначе.
Хотел было плюс поставить, но вот за это не поставлю.
Здравствуйте, McSeem2, Вы писали:
MS>Поэтому и в программизме так же — нет и не может быть универсального средства. Для бизнес-логики наилучшим было бы что-то типа C#, может быть, Nemerle как офигитиельно классная идея. Но извините, для научных расчетов все равно рулит Фортран! Ни C++, ни C#, ни Java — там просто рядом не стояли (а, да, есть Питон в качестве скриптового языка, но это не важно). Для гейм-рендеринга — C++ и ничего другого.
1. А что на счёт UML?
2. Бизнес-логику обычно рисуют не с помощью языка программирования.
MS>Так что давайте не будем мечтать об абсолютно универсальном языке — он невозможен так же как невозможен универсальный растворитель.
Если этого нет, то это не значит, что это невозможно создать.
MS>Чем дольше я живу, тем сильнее убеждаюсь — нету в природе такой профессии как Программист, нету. Есть профессия Инженер. С удовольствием послушаю возражения, что типа "настоящий программист — это ученый" или "настоящий программист — это творческая личность". Нет, люди. Если ты программист — ты инженер и никак иначе.
В одной многолетней конторе я числился как "инженер-программист".
Здравствуйте, Real 3L0, Вы писали:
R3>1. А что на счёт UML?
И много программ ты на нем написал? R3>2. Бизнес-логику обычно рисуют не с помощью языка программирования.
Что значит нарисовать бизнес-логику? Речь шла не о рисовании диаграмм, а о языке реализации.
MS>>Так что давайте не будем мечтать об абсолютно универсальном языке — он невозможен так же как невозможен универсальный растворитель. R3>Если этого нет, то это не значит, что это невозможно создать.
Как на счет создать растворитель, который растворяет все, в том числе и любой растворитель?
R3>В одной многолетней конторе я числился как "инженер-программист".
Видимо имелось ввиду, что в первую очередь ты инженер, а во вторую — программист. И как инженер ты должен уметь грамотно пользоваться инструментами и выбирать каждый под свою задачу, а не решать все задачи универсальным инструментом.
Здравствуйте, Spiceman, Вы писали:
R3>>1. А что на счёт UML? S>И много программ ты на нем написал?
UML можно преобразовать в код.
R3>>2. Бизнес-логику обычно рисуют не с помощью языка программирования. S>Что значит нарисовать бизнес-логику? Речь шла не о рисовании диаграмм, а о языке реализации.
То и значит. Это было небольшое замечание.
S>Как на счет создать растворитель, который растворяет все, в том числе и любой растворитель?
И почему его нельзя создать?
R3>>В одной многолетней конторе я числился как "инженер-программист". S>Видимо имелось ввиду, что в первую очередь ты инженер, а во вторую — программист. И как инженер ты должен уметь грамотно пользоваться инструментами и выбирать каждый под свою задачу, а не решать все задачи универсальным инструментом.
Я не знаю, что имелось в виду и кем я был в первую очередь, но в моих должностных обяззанностях фраз об тех или иных инстументах не было.
Здравствуйте, McSeem2, Вы писали:
MS>Так что давайте не будем мечтать об абсолютно универсальном языке — он невозможен так же как невозможен универсальный растворитель.
Универсальный инструмент никому не нужен. Нужен инструмент, который будет позволять легко создавать свои собственные инструменты под свои собственные нужды. И ограничен такой инструмент может быть лишь фантазией разработчиков, временем и ограничениями базовой платформы. В случае с Немерле к этому всё и идёт.
MS>Я это к чему — тут какая-то локальная войнушка по поводу Немерле. Я абсолютно против банеров типа "не нужен" — это тупо и оскорбительно. Оскорбительно прежде всего для владельца этого постера — сразу видно, что человек неадекватен.
Не надо их отговаривать. Эти люди сами того не понимая приносят Немерле не малую пользу. Это же ходячая бесплатная реклама. Пусть продолжают в том же духе.
MS>С другой стороны, немерлисты смами напоролись — ибо очень уж агрессивно стали орать.
+100. Выдержки кое-кому точно не хватает.
MS>Чем дольше я живу, тем сильнее убеждаюсь — нету в природе такой профессии как Программист, нету. Есть профессия Инженер. С удовольствием послушаю возражения, что типа "настоящий программист — это ученый" или "настоящий программист — это творческая личность". Нет, люди. Если ты программист — ты инженер и никак иначе.
И что в этом плохого?
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, Real 3L0, Вы писали:
S>>И много программ ты на нем написал? R3>UML можно преобразовать в код.
Это не ответ на мой вопрос.
S>>Как на счет создать растворитель, который растворяет все, в том числе и любой растворитель? R3>И почему его нельзя создать?
Хм. А как он будет существовать, если он растворяет сам себя?
R3>Я не знаю, что имелось в виду и кем я был в первую очередь, но в моих должностных обяззанностях фраз об тех или иных инстументах не было.
Этого и не должно быть в должностных обязанностях. Хотя обычно людей на работу берут на конкретный яп и на конкретные инструменты. Лучше скажи с чем ты не согласен, что инженер должен уметь правильно выбрать инструмент, а не использовать везде универсальный? Или согласен? Мне что-то не понятно.
Здравствуйте, IT, Вы писали:
IT>Универсальный инструмент никому не нужен. Нужен инструмент, который будет позволять легко создавать свои собственные инструменты под свои собственные нужды.
Мне кажется тут ключевое слово "легко". Возможно ли это?
Здравствуйте, Spiceman, Вы писали:
S>>>И много программ ты на нем написал? R3>>UML можно преобразовать в код. S>Это не ответ на мой вопрос.
Т.е. если по словам других, UML можно преобразовать в код, но лично я ни разу этого не делал, то это значит, что UML нельзя преобразовать в код? Шикарненько!
S>>>Как на счет создать растворитель, который растворяет все, в том числе и любой растворитель? R3>>И почему его нельзя создать? S>Хм. А как он будет существовать, если он растворяет сам себя?
А как, на пример, существует спирт, который испаряется при открытии бутылки?
S>Этого и не должно быть в должностных обязанностях. Хотя обычно людей на работу берут на конкретный яп и на конкретные инструменты. Лучше скажи с чем ты не согласен, что инженер должен уметь правильно выбрать инструмент, а не использовать везде универсальный? Или согласен? Мне что-то не понятно.
Я не согласен с тем, что универсальный инструмент — это плохо/не возможно/не ...
Здравствуйте, McSeem2, Вы писали:
MS>Поэтому и в программизме так же — нет и не может быть универсального средства. Для бизнес-логики наилучшим было бы что-то типа C#, может быть, Nemerle как офигитиельно классная идея. Но извините, для научных расчетов все равно рулит Фортран! Ни C++, ни C#, ни Java — там просто рядом не стояли (а, да, есть Питон в качестве скриптового языка, но это не важно). Для гейм-рендеринга — C++ и ничего другого.
Кстати, а если создадут язык, который будет тупым объединением всех возможностей всех языков? Например, тот же C++: для верхего уровня, например, MFC; для математики — какая-нибудь библиотека; для гейм — он уже готов. В любой момент можно вызвать любую функцию из любого уровня.
Здравствуйте, Real 3L0, Вы писали:
R3>Кстати, а если создадут язык, который будет тупым объединением всех возможностей всех языков? Например, тот же C++: для верхего уровня, например, MFC; для математики — какая-нибудь библиотека; для гейм — он уже готов. В любой момент можно вызвать любую функцию из любого уровня.
Пытались в свое время. PL/1 — гибрид Фортрана, Алгола и Кобола. Особой популярностью не пользовался. Его предшественники (кроме Алгола) до сих пор живы, о нем почти не слыхать.
Здравствуйте, Pavel Dvorkin, Вы писали:
PD>Пытались в свое время. PL/1 — гибрид Фортрана, Алгола и Кобола.
О да, это было нечто, я с него в школе начинал. Плюсы про сравнению с PL/1 — это просто детский лепет.
PD>Его предшественники (кроме Алгола) до сих пор живы, о нем почти не слыхать.
Ну, учитывая тот факт, что правопреемником Алгола стал Паскаль — можно считать, что он тоже вполне живой.
[ posted via RSDN@Home 1.1.4 stable SR1 r568, accompanied by silence ]
Здравствуйте, Real 3L0, Вы писали:
R3>Т.е. если по словам других, UML можно преобразовать в код, но лично я ни разу этого не делал, то это значит, что UML нельзя преобразовать в код?
Я не отрицал, что UML нельзя преобразовать в код. Сам так делал в простейшем случае. Хотелось бы знать, кто-нибудь реально спроектировал систему полностью в UML и потом собрал код из него полностью или даже сразу исполняемый модуль?
S>>Хм. А как он будет существовать, если он растворяет сам себя? R3>А как, на пример, существует спирт, который испаряется при открытии бутылки?
Это не то. Имеется ввиду, например, вывести пятно тем же веществом, из которого сделано пятно.
R3>Я не согласен с тем, что универсальный инструмент — это плохо/не возможно/не ...
ТС да пример когда универсальным инструментом нельзя было перекусить толстую проволоку. Если дополнить этот инструмент, чтобы он умел перекусывать толстые проволоки, то он окажется менее уден, его вряд ли положишь в карман.
В Структуре реальности Дойча есть пример — универсальная лаборатория, в которой можно воспроизвести любой процесс из нашей вселенной. Проблема этой лаборатории в том, что она не будет отличаться от самой вселенной.
Здравствуйте, Spiceman, Вы писали:
S>Я не отрицал, что UML нельзя преобразовать в код. Сам так делал в простейшем случае. Хотелось бы знать, кто-нибудь реально спроектировал систему полностью в UML и потом собрал код из него полностью или даже сразу исполняемый модуль?
Не знаю. А разве это невозможно?
S>>>Хм. А как он будет существовать, если он растворяет сам себя? R3>>А как, на пример, существует спирт, который испаряется при открытии бутылки? S>Это не то. Имеется ввиду, например, вывести пятно тем же веществом, из которого сделано пятно.
Ну, если это универсальный растворитель, то он не должен оставлять пятен.
S>ТС да пример когда универсальным инструментом нельзя было перекусить толстую проволоку. Если дополнить этот инструмент, чтобы он умел перекусывать толстые проволоки, то он окажется менее уден, его вряд ли положишь в карман. S>В Структуре реальности Дойча есть пример — универсальная лаборатория, в которой можно воспроизвести любой процесс из нашей вселенной. Проблема этой лаборатории в том, что она не будет отличаться от самой вселенной.
Достижение цели и способ достижения цели — это разные вещи. Мы о чём говорим?
В интернете, кстати, уже есть аналогичные примеры: рекомендательные сервисы, которые исходя из твоего выбора и выбора остальных пользователей дают тебе рекомендацию. Чем больше пользователей будет участвовать в таком сервисе, тем точнее он будет выдавать рекомендации. Т.е. максимальное качество будет достигнуто, когда все пользователи будут участвовать в этом сервисе. Т.е. — вся вселенная.
Здравствуйте, Spiceman, Вы писали:
IT>>Универсальный инструмент никому не нужен. Нужен инструмент, который будет позволять легко создавать свои собственные инструменты под свои собственные нужды. S>Мне кажется тут ключевое слово "легко". Возможно ли это?
Мне кажется тут ключевое слово "можно". А "лекго" это скорее эмоциональная окраска. Определённые усилия, конечно потребуются, но, например, для создания первой версии компилятора C# на Немерле человеку, никогда ранее не занимавшемуся парсерами, потребовалось около двух недель. Мне кажется, что это в достаточно большой степени "легко".
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, hardcase, Вы писали:
R3>>Чем больше пользователей будет участвовать в таком сервисе, тем точнее он будет выдавать рекомендации. H>А как же закон больших чисел?
Здравствуйте, McSeem2, Вы писали:
MS>Давайте поговорим об инструментах. Я очень надедеюсь, что большинство мужкого населения на этом форуме являются мужчинами. MS>А важно то, собственно, к чему это я? А важно то, что не бывает универсальных инструментов.
Рискуя быть заминусованным, все же замечу, что такие инструменты есть. Точнее даже, мета-инструменты. Это руки, растущие из плеч в первом случае и голова, находящаяся примерно там же, во втором. А если оно все растет из задницы, то ни универсальные инструменты, ни специализированные особого положительного влияния на процесс не окажут.
Я это к тому, что очень часто случаются разговоры об универсальных инструментах тогда, когда настоящие проблемы находятся абстракцией выше.
MS>так же, как универсальный растворитель — его просто не в чем было бы хранить!
В вакууме, удерживая на лету магнитным полем, не?
MS>Я это к чему — тут какая-то локальная войнушка по поводу Немерле.
А немерле это просто еще один мета-инструмент (умеющий к тому же быть и инструментом, если что), растущий откуда надо, но зависящий от места произрастания головы разработчика так же, как и любой другой.
MS>"настоящий программист — это творческая личность"
Я как-то уже писал об этом, но тогда мысль не нашла здесь понимания. Рискну еще раз: тут перепутаны причина и следствие. То, что ты являешься программистом не делает и не может делать тебя творческой личностью, также как будучи художником, ты ей тоже, вообще-то не являяешься, по крайней мере по умолчанию. Если ты творческая личность, то это может найти выражение в программировании (также как и в рисовании, разработке бюджета, музыке, оптимизации бизнес-процессов и т.п.) А может и не найти. Но не наоборот.
Понятия "творческая профессия" не существует в принципе, как не существовало той ложки перед Нео. Есть понятия "профессиональное творчество" и "творчество в профессии", но они применимы в равной степени и к любому другому нетрививальному роду деятельности, который допускает самовыражение его участников через созидание чего-либо в рамках своих процессов.