программистское, о языках
Jan. 5th, 2008 06:31 pmВ последнее время я несколько раз задумывался о разнице между продуктивными программистами и любителями языков программирования.
Эти две категории, конечно, пересекаются - но не совпадают. Изучение языков, весьма непохожих на C++ и Java, может помочь всем, и даже тем, кто после этого все равно будет продолжать писать на C++ и Java. Но можно перепробовать много языков, уметь интересно о них рассказать и сравнить, а использовать эти знания для серьезных, полезных проектов - не уметь.
(здесь я хотел привести несколько примеров, но в итоге не нашел подходящих слов. по-английски я написал что-то схожее здесь, но тоже неудачно)
Эти две категории, конечно, пересекаются - но не совпадают. Изучение языков, весьма непохожих на C++ и Java, может помочь всем, и даже тем, кто после этого все равно будет продолжать писать на C++ и Java. Но можно перепробовать много языков, уметь интересно о них рассказать и сравнить, а использовать эти знания для серьезных, полезных проектов - не уметь.
(здесь я хотел привести несколько примеров, но в итоге не нашел подходящих слов. по-английски я написал что-то схожее здесь, но тоже неудачно)
no subject
Date: 2008-01-06 04:03 am (UTC)no subject
Date: 2008-01-06 04:07 am (UTC)no subject
Date: 2008-01-06 04:12 am (UTC)А сколько, например, программистов смогут назвать хотя бы три стратегии бранчевания проектов и сравнить их? А тут ведь неправильный выбор и неправильное применение легко выливается в тысячи потерянных часов
I have some scathingly insightful remarks to make!
Date: 2008-01-06 04:27 am (UTC)no subject
Date: 2008-01-06 04:31 am (UTC)no subject
Date: 2008-01-06 04:33 am (UTC)Зависит от проекта
Если это написания какой-нибудь прилады для Симбиан ОС или драйвера для фрисбсд ,то да
Если проект, например, подразумевает некое исследование над данными, и затем написание некой программы. которо что-то будет делать исходя из этого исследования, то в первой части у вас зачастую очень большой выбор
Re: I have some scathingly insightful remarks to make!
Date: 2008-01-06 04:33 am (UTC)Anyway, aren't you going to berate me for hating on _why? :)
no subject
Date: 2008-01-06 04:38 am (UTC)no subject
Date: 2008-01-06 04:40 am (UTC)Re: I have some scathingly insightful remarks to make!
Date: 2008-01-06 04:47 am (UTC)Now, that goes without saying, but them reddit ppl already spent all my ammo! (hpricot, shoes, markaby, tryruby, ...)
Reluctantly, I must agree with your remark on _why's poignant guide. Although I find it hilarious (местами =), I will never (again) recommend it to someone who doesn't know ruby yet ;)
А по теме у меня возражений нет =)
no subject
Date: 2008-01-06 05:00 am (UTC)... ku'i lo mi'a mlatu cu se tolvajni la'e di'u ...
no subject
Date: 2008-01-06 05:41 am (UTC)Проекты бывают и развитием существующих продуктов, когда выбор языка вообще отсутствует.
no subject
Date: 2008-01-06 06:38 am (UTC)Вот например один из самых полезных сайтов если вы хотите купить цифровую камеру: www.dpreview.com
Владелец сайта тщательно оттестировал сотни камер, сделав десятки тысяч пробных снимков. НИ ОДИН ИЗ НИХ не оправдывает художественно хотя бы процента этих усилий (see samples in his camera reviews)
http://www.dpreview.com/reviews/panasonicdmcl10/page31.asp
Не стоит спорить, что именно этот человек ведет свой сайт коммерчески и ему не до искусства. Во-первых, любителей снаряжения множество и они все одинаковы, а во-вторых его увлечение фотографией, которое должно было привести к сайту и профессиональному тестированию за деньги компаний обязано было бы с годами выработать хоть какой-то взгляд и умение вырезать из жизни хоть в чем-то интересный момент или композицию.
Он абсолютно оглушающе пуст.
Другой категории - почти наплевать чем снимать и как. Хоть спичечным коробком с дыркой (популярный дизайн камеры обскуры), хоть пласстиковой Хольгой, копеечная смена или лейка за тысячи - им все равно, потому что интересны им результаты и композиции, а главное - увидеть. Камера лишь позовляет увиденное оставить на пленке или в памяти машинки.
Эти, конечно, понимают, что коробка А позволит сделать качественнее и вытянет снимок в темноте, а коробка Б применима лишь в солнечный день. Но функциональность всегда подчинена главному интересу - увидеть.
http://remetalk.livejournal.com/
Так же и программисты. Одних восхищают крючочки внутри коробки, другие готовы хоть на лиспе, хоть на ассемблере - потому что компьютер, по сути, "живая" (непредсказуемая, которую можно развивать, которая может быть помощью в мышлении) система, и их вечно посещают идеи.
Образование - довольно-таки роков`ая обуза в том смысле, что если думание запустилось в детстве, эта нужда изобретать, перебирать мысли и играть с ними остается как наркотик на всю жизнь. Отрежь возможность (например, отрезав от информации - поставь интеллигента в тайге ветки рубить) - и он впадет в самоубийственную депрессию
no subject
Date: 2008-01-06 06:52 am (UTC)примерно 20 уровней после ужина
просто великолепно проведен вечер, пора смотреть кино )
no subject
Date: 2008-01-06 06:56 am (UTC)Я выискивал разные красивые узоры, и каждым узором вязал образец: прямоугольничек такой, на котором узор хорошо виден.
Но даже пригодный шарф ни разу не связал, не говоря о свитерах. Слава богу, есть сестры, они и свитера умеют. С узорчиками, и про каждый узорчик я знаю, как его связать :)
no subject
Date: 2008-01-06 07:03 am (UTC)Поэтому они сдают экзамены, где надо поговорить с преподавателем часто на отлично, но там, где нужна кропотливость, будут переправлять, зачеркивать и сбиваться в "непринципиальных" местах.
Таких система образования наказывает "твердыми четверками" и разговорами с родителями об усидчивости.
no subject
Date: 2008-01-06 07:15 am (UTC)Хотя мои коллеги, допустим, вполне эффективно используют свои знания о рельсах и руби в работе на PHP. Хотя ворчания на эту тему тоже достаточно :)
no subject
Date: 2008-01-06 07:43 am (UTC)no subject
Date: 2008-01-06 08:07 am (UTC)а понять в этом сложном коде потом что-то можно? А то у нас был такой, потом ушёл, (в том числе) мне-ламеру пришлось разбираться. И везде (подчёркиваю, ВЕЗДЕ, в любом куске кода) можно было сделать минимум в 2 раза проще. Но для этого пришлось бы подумать, то есть снизить производительность.
no subject
Date: 2008-01-06 09:35 am (UTC)no subject
Date: 2008-01-06 09:44 am (UTC)Re: I have some scathingly insightful remarks to make!
Date: 2008-01-06 10:28 am (UTC)no subject
Date: 2008-01-06 10:36 am (UTC)Ведь вместо изучения языков программирования, можно посвящать себя освоению различных IDE или графических toolkitов - и иногда это очень осмысленная деятельность,а иногда - нет.
касательно dpreview
Date: 2008-01-06 11:15 am (UTC)no subject
Date: 2008-01-06 11:17 am (UTC)Сочетать в себе и то и другое (пускай даже в режиме переключения контекста) очень немногим удается.
Я утрирую, конечно.
no subject
Date: 2008-01-06 12:34 pm (UTC)no subject
Date: 2008-01-06 12:39 pm (UTC)no subject
Date: 2008-01-06 01:50 pm (UTC)no subject
Date: 2008-01-06 04:00 pm (UTC)Не уверен. У меня сейчас ощущение, что функциональные языки, которыми я занимался последний год, как раз ухудшили мою производительность на Java. Стал постоянно ловить себя на том, что отыскиваю пути выразить на ней что-нибудь из области FP, обычно безрезультатно, и злюсь. Типичные явовские решения кажутся чурбанными и отметаются автоматически, из-за чего много сил и времени уходит на борьбу с внутренним пуританином. А ведь раньше он играл в моей команде. Хотя, может быть, дело лишь в тренировке.
Интересно, как долго длится увлечение языками. В конце концов, языков (или, скорее, видов), действительно непохожих друг на друга, не так уж много. Мне трудно себе представить, что через 5 лет в этой области останется для меня еще хоть что-то неоткрытое. Скорее всего, интерес перекинется дальше - может быть, на изучение устройства систем типов, компиляторов, горизонтов развития области. А что будет еще дальше, даже представить не могу. Выходит, "любитель языков" - это не определение и не диагноз, а только одна из стадий развития. Но как называется такая форма жизни?
no subject
Date: 2008-01-06 04:14 pm (UTC)А с языками? Прочитал три книги, написал триста строчек, даже в резюме стыдно упомянуть. Максимум - напишешь на нем когда-нибудь одноразовый скрипт на три часа работы. Где радость-то
no subject
Date: 2008-01-06 04:16 pm (UTC)no subject
Date: 2008-01-06 07:14 pm (UTC)У вас есть красивая теория, многое объясняющая™ и вызывающая приятные ощущения.
Вы её применили к чуваку не озаботившись предварительной проверкой.
Потом выясняется, что чувак-то как раз вполне продуктивный программист.
Мицгол или Огурцова в таком случае сказали бы, что чувак на самом деле вовсе не продуктивный программист, потому что продуктивные программисты не увлекаются языками ради красивостей (см. пункт 1).
Объявить чувака исключительным случаем посерединке, конечно, лучше с точки зрения сохранности разума, но ещё лучше заранее проверять теории, а если и anecdotal evidence их вдруг случайно опровергает, то и вообще держать при себе, подвергая непрерывным глубоким сомнениям. Йа Кассандро! =)
Хотя действительно в этом что-то есть, да! Мне давно интересно, утверждение о том, что форт-систем написано больше, чем приложений, соответствует истине?
no subject
Date: 2008-01-06 07:56 pm (UTC)Просто я не хотел совсем уж на ад хоминемы переходить, поэтому повторял снова и снова, мол я веник, судить не могу.
no subject
Date: 2008-01-06 07:58 pm (UTC)no subject
Date: 2008-01-06 08:03 pm (UTC)no subject
Date: 2008-01-07 01:07 am (UTC)Уровень оказался всего 17 (смотрю на стенку)
Посвящу сегоднящний вечер
no subject
Date: 2008-01-07 03:14 am (UTC)no subject
Date: 2008-01-07 08:54 am (UTC)no subject
Date: 2008-01-07 10:41 am (UTC)круто
очень понравилось когда надо делать порталы находясь непрерывно в полете (18 или 19)
Выход из корпорации показался несколько однообразным с точки зрения трюков, там больше надо не сообразить, а разглядеть куда надо приткнуть портал
Физику с поведением в полете надо бы доделать, повороты совершено неестественные, вращательный момент теряется
Хотя может с нормальными интерфейсами такая физика лучший вариант, но кажется можно было бы сделать более естественно
no subject
Date: 2008-01-07 12:04 pm (UTC)Но вот, например, мне достаточно тяжело "с нуля" написать законченный продукт - по крайней мере без платы:) За деньги - ещё можно, но чуть надо себя пересилить. А вот при уже готовом продукте сделать нормальный рефакторинг - задача значительно более простая для меня. Поэтому, я бы вполне согласился работать с таким коллегой, как в Вашем примере, если он не слишком уж ужасно пишет:))
И конечный результат при этом был бы вполне неплох. Программа-то у него работает? Работает. Глючит? Наверно, нет, иначе бы Вы про это явно упомянули:) А дальнейшее сопровождение и необходимая оптимизация - после того, как "оно" начнёт работать...
no subject
Date: 2008-01-07 02:17 pm (UTC)В общем, не советую... (если, конечно, мои советы Вам нужны :-)
no subject
Date: 2008-01-07 08:06 pm (UTC)no subject
Date: 2008-01-08 12:50 am (UTC)Т.е. его продуктивность мерить (если уж взялись =) таким образом -- видимо не верно.
К тому же, ты нашел с кем сравнивать -- "я знаю в гугле людей", хыхы. Это просто какое-то "пушкину ваши хайку -- на две минуты работы".