LINUX.ORG.RU
ФорумTalks

Ну давайте подискассим малость о программистах, что ли, раз тут тренд такой


0

1

Вот есть у нас кодер, программист, и лисповый программист. Дают им всем по задаче.

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

Приходит заказчик, морщит нос, дает эквивалент миски риса кодеру, чтобы тот мог заесть свой растворимый кофе, и идет с покалеченным творением больного разума к программисту. Занавес.

Лисповый, значит, программист, получив задание, не садится сразу же писать его реализацию. Он пишет DSL (подмножество лиспа, конечно же), на котором формулирует задачу, после чего пишет компилятор из этого DSL в другой DSL (тоже подмножество лиспа), потом из этого DSL еще во что-то, и так немного рекурсирует с нарастающей сложностью, по дороге находит пару решений не относящихся к делу, но интригующих NP-сложных задачек, участвует с этим арсеналом в ICFP'XX, не побеждает (потому что его лавры забирают питонисты и какой-то косоглазый сиплюсплюсник), тем временем его компиляторы в поте лица компилируют сформулированную им в начале этого предложения задачу. И вот, когда заказчик в очередной раз вопросительно подымает бровь, демонстрирует ему плод больших трудов — безупречную реализацию компилятора лиспообразного языка, в который вся задача в конце концов повыскомпилировалась.

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

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

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

Занавес.

★★★★★

Последнее исправление: shimon (всего исправлений: 1)

Тема php, C#, Haskell, Linux, Windows, Emacs, Vim, MSVS не раскрыта.

Yareg ★★★
()

>Дают им всем по задаче.

Задачи разные? Если разные, то почему «программист» получил задачу «кодера»?

simplex
()

а их разве не трое?
кодер
программист
и лиспер

etwrq ★★★★★
()

не до конца дочитал, сорри

etwrq ★★★★★
()
Ответ на: комментарий от simplex

> Задачи разные? Если разные, то почему «программист» получил задачу «кодера»?

Предполагается, что задачи пошиба одинакового, но заказчики разные. То бишь эти трое не знают друг о друге.

shimon ★★★★★
() автор топика
Ответ на: комментарий от simplex

> Задачи разные? Если разные, то почему «программист» получил задачу «кодера»?

Потому что свою давно сделал и пополнил закрома свежайшим эфиопским кофе, вестимо.

shimon ★★★★★
() автор топика

> превращается в половой орган

какая-то дичь а не фраза, причем значение мне таки не открылось

Просто, значит, программист. Получает от заказчика изуродованный кувалдой монстр кодера, присвистывает, превращается в половой орган


зачем он превращается в половой орган? (понятно что в переносном смысле)

kost-bebix ★★
()

Много букаф. Прочитал. В целом хуита. Занавес.

Andru ★★★★
()
Ответ на: комментарий от kost-bebix

> какая-то дичь а не фраза, причем значение мне таки не открылось

Если я скажу короткое и ёмкое слово, которое я заменил данной фразой, тему удалят. Capisce?

зачем он превращается в половой орган? (понятно что в переносном смысле)


А тебе никогда не сваливали в одну кучу очень приблизительно работающего хитросплетенного кода о ~3M строчек с просьбой «ну ты разберись, поправь...»?

shimon ★★★★★
() автор топика

Кастую в тред лисперов, которые скажут, что то, что ты описал про них, самое что ни на есть Ъ, и так и должно быть, а все остальное не нужно.

Zhbert ★★★★★
()

остается вопрос, у лиспера заработало или не? или заказчик был вынужден описывать входные данные в терминах DSL (отчего и морфировал)?

anon1984
()
Ответ на: комментарий от simplex

>непонятно значение слова «повыскомпилировалась»

Это, видимо, что-то из разряда «недоперепил».

Zhbert ★★★★★
()

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

Но работает оно корректно только по чётным неделям и тормозит :}

Deleted
()

Вы как бы намекаете, что кодер (как я понял в данном контексте - адепт Ассемблера) и Лиспер - не программисты? Плюс целых два раза в тексте всех заруливают питонисты, причем во второй раз питонистом оказывается сам Программист. Т.е. вы хотите сказать, что только знатоки Питона и C++ побеждают на олимпиадах и являются настоящими программистами?)

Nebuchadnezzar ★★★★
()
Ответ на: комментарий от anon1984

> остается вопрос, у лиспера заработало или не? или заказчик был вынужден описывать входные данные в терминах DSL (отчего и морфировал)?

У лиспера получился на выходе лисповый компилятор, а не то, что заказчик просил.

Лисперу какую задачу ни задай, у него всегда получится лисповый компилятор.

shimon ★★★★★
() автор топика
Ответ на: комментарий от Nebuchadnezzar

>только знатоки Питона и C++ побеждают на олимпиадах и являются настоящими программистами?)

Так так и есть. Хотя питон не нужен, да.

кодер (как я понял в данном контексте - адепт Ассемблера)


Почему ассемблера-то? Просто быдлокодер, язык неважен.

Zhbert ★★★★★
()
Ответ на: комментарий от Nebuchadnezzar

А мне вот, например, кажется, что Лиспер самый, что ни на есть Тру в этой троице.

Nebuchadnezzar ★★★★
()
Ответ на: комментарий от Nebuchadnezzar

Тех кто побеждают на олимпиадах вообще не назвать настоящими программистами. Это скорее математики.

simplex
()
Ответ на: комментарий от simplex

>но понять это можно только начав изучать Lisp.

Воистину так!

Zhbert ★★★★★
()
Ответ на: комментарий от Nebuchadnezzar

> кодер (как я понял в данном контексте - адепт Ассемблера)

Это где такое сказано?

Т.е. вы хотите сказать, что только знатоки Питона и C++ побеждают на олимпиадах


Вообще-то, для ICFP 2009 и 2010 это документально засвидетельствованный факт.

причем во второй раз питонистом оказывается сам Программист.


Ну почему сразу так? Ну сказал бы я, что он UI написал на Tcl/Tk. Суть бы осталась, но тебе стало бы легче?

shimon ★★★★★
() автор топика

>но тебе стало бы легче

Но у меня родилось бы меньше подозрений. Современные СМИ, знаете ли, развивают привычку читать между строк.

Это где такое сказано?

Ну, а на каком еще языке для решения простой задачи нужно писать по 10К строк в день, большая часть из которых заменяется вызовом библиотечных функций?)

Просто быдлокодер, язык неважен.

Быдлокодеры смогут реализовать эту задачу накидав кнопочек в Дельфе.

Тех кто побеждают на олимпиадах вообще не назвать настоящими программистами. Это скорее математики.

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

Nebuchadnezzar ★★★★
()
Ответ на: комментарий от linuxfan

>Мутно. Много буков. Смысла мало.

Суть в том, что автар как бэ хочет нам сказать, что он относит себя к Программистам, а мы все таки говно под его ногами.

kranky ★★★★★
()
Ответ на: комментарий от kranky

У этой иснории нет предисловия и морали. Сюжетные линии перепутаны в клубок. Автору не стоит писать длинные тексты: у него мысли в них теряются.

linuxfan
()
Ответ на: комментарий от Nebuchadnezzar

>Быдлокодеры смогут реализовать эту задачу накидав кнопочек в Дельфе.
да, непременно нагуглив пяток-десяток компонентов и кинув их на форму

anon1984
()
Ответ на: комментарий от Nebuchadnezzar

> >Это где такое сказано?

Ну, а на каком еще языке для решения простой задачи нужно писать по 10К строк в день, большая часть из которых заменяется вызовом библиотечных функций?)


На любом. Быдлокодеры, они такие — документацию по стандартной библиотеке читать не умеют, у них есть книжка «Основы языка ХХХ», все остальное они на основе полученных знаний криво реализовывают, даже если реализация имеется.

shimon ★★★★★
() автор топика
Ответ на: комментарий от linuxfan

А по-моему очень современненько написано: сначала скучная, но важная завязка про кодера, потом переключаемся на вторую сюжетную линию про лиспера, которая увлекательна, но к основному сюжету отношения не имеет, и под конец в развязке возвращаемся к нашей истории, въезжает сам автор на белом коне и всех спасает. Ну чем не бестселлер?

kranky ★★★★★
()
Ответ на: комментарий от kranky

> А по-моему очень современненько написано: сначала скучная, но важная завязка про кодера, потом переключаемся на вторую сюжетную линию про лиспера, которая увлекательна, но к основному сюжету отношения не имеет, и под конец в развязке возвращаемся к нашей истории, въезжает сам автор на белом коне и всех спасает. Ну чем не бестселлер?

А кто сказал, что в третьем случае — это я?

Лично я больше всего напоминаю себе этого лиспового программиста (если опустить моменты с NP-сложными задачами и самозастрелом заказчика), только на питоне. Все потому, что слишком рискую увлечься теоретическим аспектом какой-то подзадачки из Главной Задачи, и понеслась — если вовремя за уши не вытащить, пипец будет.

«Просто программист» списан из одного коллеги, который пытается меня отучить от витания в облаках теории и приучить к тому, чтобы все-таки зарабатывать деньги.

«Кодером» был опять-таки я, только лет шесть-семь назад.

shimon ★★★★★
() автор топика

Я не верю в программиста, который самостоятельно напишет кнопку «сделать все зашибись».

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

thesis ★★★★★
()

> Занавес.

Не раскрыта тема напитков, употребляемых лисп-программистом.

oami ★★
()
Ответ на: комментарий от Zhbert

Откуда вообще столько агрессии к пайтону?
Это риторический вопрос, если что.

А история очень, очень холиварная. Написана толстым троллем.
И про лисперов толсто(есть и такие маньяки, но нормальные лисперы умеют решать задачу, если её реально решить на лиспе в нужный срок). И про «обычных» кодеров толсто. И про питон очень, очень толсто.

tia
()
Ответ на: комментарий от Terrens

Ну ладно, не буквоедствуй - шутку оценил, но тогда хотя бы в 10ти. Мне просто реально интересен пример задачи от заказчика, для которой можно написать лисп-компилятор, пусть и неработающий. Обычно как-то сталкивался или там с веб-сервисом каким, или аппликухой для мобильника, ну или с гуем на десктопе (это конечно уже прошлый век, но иногда до сих пор тоже требуется) - тут выбор средств разработки обычно довольно ограничен, а успешность проекта зависит больше не от фантазии и способностей кодера, а от менеджера/сборщика-спеков-от-заказчика, который его энергию направляет в нужное русло.

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

bender ★★★★★
()
Ответ на: комментарий от bender

> Ну ладно, не буквоедствуй - шутку оценил, но тогда хотя бы в 10ти.

Никакого буквоедства. Просто опечатался с буквой З вместо С. Ну раз в 10, то в 10.

простой фронтэнд на питоне с большой красной кнопкой «Сделать зашибись».

Terrens
()

Мораль проглядывает такая:
нех%й кодить велосипеды под виндами, когда в линуксе написано 9000 утилит, выстроив которые в нужном порядке, получаешь нужный результ :)

Занавес.

robux
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.