Pull to refresh
332
Maxim Mozgovoy@rg_software

university professor and software developer

155
Subscribers
Send message
Я не думаю, что этот эксперимент поможет, потому что в лучшем случае это докажет исключительно вашу личную способность к такому скоростному обучению.

А какого рода выкладки вас могут устроить хотя бы в теории? Желательно, чтобы они не требовали нереальных денег и ресурсов с моей стороны.
Хорошо, давайте тогда поговорим о технологии, которая называется «язык программирования общего назначения». Я настаиваю, что быстрее, чем за год нельзя освоить ни один новый язык программирования общего назначения на более-менее профессиональном уровне. Чтобы просто писать не задумываясь, а не нырять в справочник каждые пять минут.

То, что приведённый код на Питоне можно накатать через два месяца обучения — верю легко, но меня интересует именно профессиональная разработка ПО, а не упражнения в однострочниках.
Да ради бога, если мне предоставят другие оценки, я за них радостно ухвачусь. Любой из нас хочет работать эффективнее и не тратить часы на ерунду. Некоторые вещи самоочевидны (визуальный html редактор против ручного написания html тегов в тексте), но вот с языками программирования далеко не всё так просто.

Как писал Брукс, если бы хоть один язык давал гарантированно 5% прироста производительности по сравнению с конкурентами, все бы уже на нём сидели.
Почему вы думаете, что я ошибаюсь? По крайней мере, я пытаюсь хоть как-то обосновывать свою логику, а не просто раздавать эпитеты.
.
Про «людей, сидящих на ассемблере» вы хватили уж совсем далеко — Фортран уже в пятидесятых годах существовал.

Разговоры про «консерваторов» и «молодых» — это вообще та ещё глупость. Нам постоянно ведь говорят, что инструмент это всего лишь инструмент, и не надо делать из него религии. Ну так давайте же и не делать, почему люди не хотят следовать своим рецептам?

Вот представьте, что я владею инструментом Х, и рассчитываю, что могу написать на нём некий проект за десять месяцев. Теперь вот есть новый инструмент Y, на освоение которого уйдёт год (будем реалистами, это крайне оптимистичная оценка), но затем я смогу справиться уже не за десять месяцев, а за восемь за счёт более высокой продуктивности (не надо предлагать мне увеличить продуктивность вдвое, это будет откровенное враньё).

Сколько проектов мне нужно закончить, чтобы получить выгоду от нового знания? Это не консерватизм, это абсолютно рациональное поведение. А если человек ещё ничего не умеет, и выбирает первую/вторую/третью для себя технологию, то ему тоже надо руководствоваться не какими-то абстрактно высокими соображениями, а мыслями о том, какая технология его сможет прокормить.

Пусть это будет что угодно, хоть Smalltalk, лишь бы он видел для себя будущее в этой области.
А можно вернуться к моим любимым циферкам: например, зайдём на linkedin и посчитаем количество людей с разными языками в профиле.
Ну так «Убить дракона» номер N: реинкарнация.
Да мне-то нормально: я к росту сложности отношусь философски. Непонятно, как видят будущее своих детищ адепты простоты.
Вот я как раз печальность не привношу — я именно за то, чтобы люди пользовались инструментами, которыми хорошо владеют. Тогда и печали не будет. Знаете, в учебниках любили анализировать, какого рода ошибки программисты совершают чаще всего. Вот такое впечатление, что современный мир — это не про облака и другие скорости разработки, а про некомпетентность. Если почитать чужой код (приходится...), то оказывается, что 90% ошибок — это не классические ошибки логики или ошибки по невнимательности, а банальное незнание азов собственного инструментария.

Так что какие уж тут скорости разработки, право слово. Быстро разрабатываем, потом ещё неделю разгребаем тот ужас, что люди понаписали.
ОК, он меняться не будет, и значит, останется ровно там же, где и был.
Это тоже вполне нормальный метод существования: вот наши принципы, и мы не будем прогибаться.

Надо понимать, что Java / C++ / C# ровно потому и сидят уже десять лет в десятке, что готовы изменяться и усложняться.

В данном случае «сложность» — это не самоцель, фраза «чем сложнее технология, тем она правильная», конечно, бредова. Сложность — это что-то вроде функциональности MS Word: любому нормальному юзеру 90% всех функций нафиг не нужно. Проблема в том, что разным юзерам нужны разные 10%, и именно потому Word и лидер рынка, хоть от него и плюются.

Соответственно, у авторов языка есть выбор: либо становится монстром а-ля Word и обслуживать огромную массу пользователей с разными потребностями, либо становиться нишевым продуктом. Как раз эта логика подтверждается огромной массой практических примеров из самых разных областей.
Вот для меня все эти айфоны и AWS ничего не меняют, потому что программирование — это процесс мышления прежде всего, а человеческий мозг мало меняется не только за десять, но и за сто лет.
Я же не против развития языков и технологий. Пусть появляются новые средства, скажем, для меня это Python, который я стал осваивать уже в достаточно зрелом возрасте.

Меня расстраивает, что каждый раз нам предлагают старое средство в новой обложке: вот, простота, трудно написать откровенный шлак, обезьяна освоит. Ну что, у человечества память как у золотых рыбок? Ведь и Fortran, и Basic приходили ровно с той же риторикой. И это неплохо, но ничего нового, а главное — не это ключ к хорошему и качественному будущему.

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

И данная статья тоже описывает печальную реальность. ОК, ребята, вы не знаете, что такое starship operator в Scalaz. Ну а на черта вы тогда в это дело влезли? Пользуйтесь теми инструментами, в которых разбираетесь, ё-моё…
Знаете, безотносительно Go я слабо верю в простоту.
Ведь мы это всё уже проходили. Помните 1996 год? :)
Java появилась ровно с тем же набором аргументов: C++ толстый язык, в нём масса сложного (указатели, препроцессор), масса всяких legacy-инструментов (include макросы и т.п.), а мы сейчас сделаем простое и удобное. И что? Прошло 20 лет, и теперь Java такой же монстр. И с C# та же точно история, сравните с чего язык начался, и к чему пришёл.

Соответственно, простой язык — это что-то вроде Эсперанто: либо он неизбежно начнёт усложняться от столкновения с реальным миром, либо обречён на использование некой узкой тусовкой (пусть даже и вполне достойной). Иного я не видел до сих пор, и не понимаю, почему что-то должно стать иначе.
Хорошо, будем считать, что мы оба понимаем методы TIOBE одинаково. Теперь про объективность. Объективность возможна только путём анализа численных данных. Слова вроде «монстры» или «хипстеры» ни о чём не говорят. Поэтому top 10 — это объективность, даже если методы расчёта рейтинга вам не нравятся. Предложите другой критерий, основанный на числах, а не разговорах.

«Тренды» (если опять обратиться к цифрам) ровно в том, что top 10 за последние десять лет более чем стабилен.
Гитхаб — интересно, хотя я вот им не пользуюсь. «Монстры рынка», кстати, тоже не пользуются (ну, выкладывают, может, чего-нибудь иногда в открытый доступ). RedMonk — тоже интересно, согласен, но всё же и эти ребята зачем-то ограничивают поиск сайтами Github и Stackoverflow. Довольно странно выбранный критерий, ну да их дело.

Я не то что бы сильно критикую, но просто как-то экстравагантно опираться на рейтинги, по сути сводящимися к кастрату TIOBE: те ищут двух десятках сайтах, а эти на двух. Возьмём уж тогда оригинал.
Жаль, что вы не в курсе метода определения рейтинга TIOBE, можете ознакомиться подробнее на досуге.

В любом случае, вы же не думаете, что именно такой гигант рынка как я, вывел все языки первой десятки TIOBE в первую десятку?

В этом рейтинге хорошо то, что его можно проследить хоть на 20 лет назад. Так вот, за последние десять лет в top 10 не изменилось решительно ничего (восемь из десяти языков те же). А если посмотреть на окрестности языков Scala и Go, вообще складывается очень интересная картинка реальной востребованности, моды и тому подобных вещей.

Кстати, если подскажете альтернативный рейтинг, основанный хоть на каких-то данных, буду очень благодарен.
Мир мало меняется: посмотрите на место языков Scala и Go в рейтинге TIOBE. Это все действительно пока что хипстерские развлечения. Можно подумать, что перед наси первая в мире контора, которая выросла до двухсот человек.
Не был пользователем старой оперы, но полагаю, что да…
Вопрос немного не в тему: а существует ли способ вызвать внешний (exe по сути) инструмент с текущим URL'ом? Через кнопку на панели / контекстное меню / любым способом?..
У меня нет причин не доверять Максиму Шафирову, но завтра у компании может быть другой CEO с другим мнением, ну или ещё чего-нибудь произойдёт.

А по поводу «будет легко найти через 20 лет» — ну что значит «найти»? У меня этот компилятор уже есть, мне ничего искать не надо. Без исходных кодов я как-нибудь переживу, а благодаря виртуализации я надеюсь, что всегда буду иметь возможность воссоздать на новом компьютере своё нынешнее (или десятилетней давности) окружение.

Самое слабое звено — это всякие онлайн-активации, всё остальное я аккуратно складываю в копилку, все зависимости надёжно сохранены.
Хорошо, не будем спорить о вечности. Некоторый софт может представлять культурную ценность, скажем, Doom или MS Office 6 вполне резонно могут захотеть запустить и через сто лет.

Но даже если не брать такие крайности, в среднесрочной перспективе (10-20 лет) тоже всё легко может сломаться. Даже если сейчас у меня есть «вечная» лицензия на софт X версии N, эта лицензия вполне может потребовать интернет-проверки при установке на новый компьютер, и если сервер активации вырубили, то я приехал. Вот это меня совсем убивает: даже если мне пожизненную лицензию обещают, это всё равно враньё: стоит компании уйти с рынка, как все лицензии превратятся в тыкву.
Мне вот не пофиг. Хочу пополнить ряды интернет-нытиков, просто ради вселенского баланса.

Я уже не первый год (и даже десятилетие) в профессии, и вот этот современный тренд «подсадить всех на подписку» мне дико не нравится, хотя я прекрасно понимаю, что производителям он как раз наоборот, нравится, и даже очень.

Причин тому масса. Не буду вдаваться в подробности, но, например, мне очень важно иногда расчехлить проект пятилетней давности и воссоздать его рабочее окружение. Современный компилятор легко может сказать, что, мол, твоя лицензия давно истекла, а продлить (на эту версию) ты её уже в любом случае не можешь. Или фирма вообще разорилась и ушла с рынка. Для меня это настолько серьёзный фактор, что я уже из-за этого готов отказаться от любого продукта, за который нельзя раз заплатить и иметь его в рабочем состоянии вечно. Кроме того, мне тоже кажется несправедливым, когда навязывается вот такой «сервис». Вышел новый продукт — отлично, я почитаю обзоры, попробую, и если понравится, обновлюсь. Уже не первый раз обновляюсь.

Теперь про «обычный рынок». Так-то оно всё так, но не надо представлять себе его как ситуацию, где «никто никому не должен». Например, магазин ДОЛЖЕН по закону взять обратно в течение двух недель товар, если мне он не понравился. Магазин не хотел бы этого, но потребители продавили, и это хорошо.

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

Если мы сегодня согласимся, что софт по подписке с автооткатом — это справедливо, то завтра производители нам на голову сядут (ибо рынок, и никто никому не обязан). Если же удастся убедить обычного простого потребителя в том, что такой производитель не заслуживает внимания, ситуация будет меняться. И примеров тому много, чувство справедливости — великая вещь.
Не, это уже во многом паранойя. Айти сектор в России не очень велик (по отношению к ВВП), и куда проще прилично платить немногочисленным высококлассным специалистам, потребным государству, чем перекраивать всю индустрию.

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

Information

Rating
4,712-th
Location
Фукусима, Япония
Date of birth
Registered
Activity