Новый тренд в интернетах: поклонение кондовости и тупости
Вот последний пример: http://vit-r.livejournal.com/739457.html
"Уравнение шредингера вредно, потому что не сводится к арифметике первого класса, а наши индусы-контракторы буквы и значки не понимают".
Не очень понимаю, откуда этот луддизм в последнее время вылез, неосиляторы что-ли решили занятся своим job security?
"Уравнение шредингера вредно, потому что не сводится к арифметике первого класса, а наши индусы-контракторы буквы и значки не понимают".
Не очень понимаю, откуда этот луддизм в последнее время вылез, неосиляторы что-ли решили занятся своим job security?
no subject
Я не понимаю, зачем в угоду индусам чистить ружья кирпичом, скажем так.
no subject
no subject
no subject
no subject
вы, ничтожные, даже и не пробуйте что-то, кроме Java, ибо я ваще PhD, и пробовал и то, и другое.
Как мне относиться, к примеру, к вашим высказываниям про какую-нибудь функциональщину?
Я так понимаю, что уж вы-то попробовали и то, и другое, и вполне можете сравнить?
no subject
А так, Да. Хаскель я смотрел лет пятнадцать назад. И книжечка про функциональное программирование, ещё та зелёная советских времён, у меня где-то ещё валяется. И, если попросят, я на Кложуре тоже чего-нибудь напишу.
Но картинка не про это. Она про стиль. Про стиль. Про стиль написания кода.
no subject
В библиотеке ghc пятнадцать лет назад было 20 файлов. Он не имел зеленых нитей, семейств типов и так далее. И компилировал со скоростью в десятки раз ниже. Не говоря о code coverage и прочих прелестях корпоративной разработки.
(no subject)
(no subject)
(no subject)
(no subject)
no subject
Как видно выше, сам Вит отказался отвечать, так что если можно, выскажусь за него я. Надеюсь, Вит не обидится - ведь если я что-то изложу неправильно, он всегда может поправить.
Дело в том, что существуют два разные СТИХИИ айти, условно назовем их "корпоративная" и "стартаперская".
Первая стихия предполагает а) манагеров в пиджаках, не сильно понимающих предметную область но умеющих требовать от подчиненных соблюдения дедлайнов и владеющих виртуозно искусством корпоративной интриги б) бизнес-аналитиков проводящих года на скучных митингах где рисуют диаграмы с) немытых бангалорских кодеров
Вит - знает эту первую стихию "от и до", в ней он как рыба в воде.
Но есть и другая стихия, стартаперская - которую Вит не просто не любит, а похоже ненавидит, если судить по количеству постингов в ЖЖ на тему "стартапы и стартаперы мудаки"
В стартаперской среде, типично наличие отсутствия пиджачных менеджеров и бизнес-аналитиков ассов Поверпойнта. Для стартапа - типична небольшая команда продвинутых инженеров, ранее работавших на хороших технических позициях в хороших компаниях типа Гугла, которые потом решили "начать делать что-то свое".
Вполне очевидно, что эти разные стихии - часто пользуются разными технологиями, и аргумент "если мы прогоним Джона Хакселиста, чтобы не повышать ему зарплату, то где мы найдем в Бангалоре Сидхарту с таким же знанием Хаскеля" - не работает в случае стартаперской стихии.
no subject
Корпоративная культура обычно означает, что заниматься автоматизацией процессов тут начали уже лет 40 назад, и количество проектов давно считают тысячами, как впрочем и программистов. И эти проекты, что характерно, работают и приносят пользу, зарабатывая деньги уже много лет.
Поэтому совершенно естественно, что компания не желает зависеть от какого-то там Джона, которому взбредет в голову переписать все, как ему вздумается, просто потому, что ему лень разбираться в легаси коде, а потом уволиться, потому что стало скушно.
При этом в бизнесе он скорее всего нихрена не смыслит (и не хочет), потому как зачем ему - он же крутой гуру хаскеля или C++, блин. И спеки, написанные аналитиками, он читать тоже не хочет - зачем гуру какие-то спеки?
Но даже если мы отбросим крайние клинические случаи, все равно останется главное: требуется не "начать делать что-то свое", а "делать то, что нужно, чтобы денежки зарабатывать". И не так, как тебе хочется, а так, чтобы написанное тобой корректно работало с сотнями существующих систем, и поддерживалось существующей командой саппорта, и не требовало переучивать тысячи пользователей.
Стартапы и стартаперы мудаки? Вряд ли. Но в тоже время я прекрасно вижу, что многие простые мысли до представилелей этой культуры просто не доходят. Потому что они, например, никогда не работали в команде, отличной от "небольшой и продвинутой", и не представляют, зачем такая может быть нужна, почему ее нельзя заменить командой из небольшого числа гуру, и как вообще работать в команде, где есть разные роли, включая людей со сравнительно низкой квалификацией.
> аргумент "если мы прогоним ... где мы найдем ..." - не работает в случае стартаперской стихии.
С чегой-то он не работает? Данный аргумент работает всегда. Даже если вы быстро найдете другого человека - ваш проект все равно уже в большой заднице, причем чем выше квалификация ушедшего - тем глубже. Чем лучше он знал бизнес - тем сложнее его заменить. Чем более яркой индивидуальностью он был - тем труднее вписать нового человека на его место.
И для стартапа это также верно, как для корпорации. Я бы даже сказал, что для маленькой команды последствия могут быть еще хуже.
no subject
ок, прекрасно, вот вы уже и договорились до того, что плохо нанимать классных программистов, потому что они напишут такой код, в которым тупые программисты не разберутся, так что давайте уже сразу на интервью находить тупых и нанимать их - их код будет легче поддерживать. Браво.
no subject
no subject
no subject
с чего вы взяли, что люди знающие и любящие функциональное программирование - отказываются читать спеки? Не, серьзно, вы можете привести хоть одну ссылку, чтобы не быть голословным - в духе "we would be happy to use Haskell in our projects but it is well known that engineers that can program in Haskell cannot read specs" ? жду ссылку.
no subject
no subject
Ну да, всё верно.
Надо только добавить, что "Вит наезжает" на стартаперов, изобретающих велосипед о четырёх колёсах, причём квадратных, но зато с коленвалом и реактивным двигателем.
Нормальный стартап от бездарного отличается именно тем, что люди не просто гонят "крутые решения", а очень чётко, подробно и понятно занимаются разработкой. Даже, если эта понятность и простота идут не на том плане, который любят корпорации. Это особенно хорошо видно, когда люди делают не абстрактный софт, а вполне конкретное железо.
no subject
Во-первых, это совсем не про то. Во-вторых, ну бред же, от начала и до конца. И не только в части касающейся Вита.
no subject
это уже было в истории, в общем-то, когда массовая дешевая компьютеризация отменила необходимость приставлять к каждой ЭВМ по паре десятков нехуёвых математиков. то же самое будет и с дохуя умными программистами, тупо избыточной аппаратной мощностью закроются все косяки некачественного кода. в общем-то, уже сейчас так. останется ряд узких ниш, типа авионики и промышленных систем, и все.
no subject
no subject
no subject
вот тут вы и попались! поздравляю, вы сели в лужу, публично.
1. можно легко написать тесты, покрывающие НЕКОТОРУЮ часть функциональности. Типа, "для галочки" - у нас тоже есть тесты, как у всех других пацанов.
2. во многих случаях - очень сложно написать тесты, покрывающие все возможные сценарии. Конечно, если у вас задача - посчитать число Пи с точностью миллион знаков после запятой, как можно быстрее - то тестирования несложно - вы просто сравниваете результат работы функции с эталонным. НО ТАК БЫВАЕТ ДАЛЕКО НЕ ВСЕГДА. Взять например шутер Crysis, в команде разработчиков которого я работал 4 года. Вы можете повторить ваш тезис "тестирование легко автоматизируются" - в отношении таких шутеров? Любые игровые сценарии? Вы понимаете что их - квинтиллионы?
3. кроме тестирования - то есть нахождения ошибок - еще есть такая весч как багфиксинг. И здесь вам скорость процессора нисколько не поможет. Только квалифицированные программисты способно БЫСТРО и ПРАВИЛЬНО фиксить баги. Более того - если у вас дофига легаси кода, с дурной архитектурой - то ситуация может быть запущено до такого состояния, что даже высококлассы спецы завязнут в бесконечных багфиксах, и легче будет просто с нуля переписать .
так что все эти байки "через 5 лет программистов будут учить в ПТУ" - мы уже слышали давным давно.
no subject
Гемдева это тоже касается.
И ещё вопрос не в том, чтобы заниматься багфиксингом, а чтобы писать так, чтобы минимизировать количество багов, запущенных в систему изначально. Особенно это касается нетривиальных побочных эффектов.
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
no subject
no subject
no subject
> необходимость приставлять к каждой ЭВМ по паре десятков
> нехуёвых математиков.
Вы, кажэтся, считаете, что тот факт, что появилась возможность каждому математику выдать по персональной ЭВМ -- уменьшыло потребность в математиках.
Вы ошыбаетесь. Они просто стали работать на благо тысяч ЭВМ сразу. А потребность -- только возросла (настолько, что теперь в математики-программисты кого только не записывают).
no subject
Запрос может выполняться несколько часов как я уже сказал.
И все это должно работать без сбоев, чуть-ли не в реальном времени. И реально ощущается нехватка информации как оно там внутри устроено. Причем писали эту систему именно с тем расчетом, чтобы все не особенно тормозило. Поэтому ряд использованных там решений вообще не применимы больше нигде. Вот такая вот уникальная система. И чтобы ее сопровождать нужно реально быть гуру, потому что никто больше не разберется в том, как оно вообще должно работать.