Pull to refresh

Comments 57

На самом деле любопытно вот так взглянуть на ретроспективу своих разработок. Да и в целом на то, как за 10 лет поменялись взгляды на жизнь.

Бывает смотришь на старые записи и код и думаешь, какой идиот это написал? И понимаешь, да блин, это же я сам...

Это называется взрослая позиция 👍

Скорее, это рост над собой. Конечно, позитивное явление.

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

Разочарование вижу я здесь. И больше в людях, чем в технологиях.

И бурчание старика.

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

Не обязательно воспринимать такое «бурчание» негативно или с раздражением. Наоборот, оно имеет ценность, потому что человек проходил через этапы, учился на реальном опыте и в его словах есть мудрость

конечно! реалистичный взгляд на вещи всегда в плюс, мне кажется :)

Он кстати «бурчит» каждые 4 года, судя по его блогу. И ценность не столько в бурчании, сколько в сравнении разных периодов и разного себя.

да, он обещал следующую ретроспективу через пятилетку :)

Часть мыслей — разумные, часть — применимы только в некоторых случаях, часть — просто отсутствие эрудиции и квалификации. Всё в пределах погрешности, как ЕГЭ на 50%.

Каждый третий мнящим себя синьёром пациент хабра — легко способен синтезировать такой список.

Про третью часть поподробнее можно?

  • ORM — это дьявол во всех языках и реализациях. Используйте SQL.

  • Типы — это просто утверждения о мире, в котором работает ваш код.

  • Те, кто заморачивается над стилем кода, правилами линтинга и прочими мелочами — извращенцы. Занимайтесь более важными вещами.

И еще пяток менее вопиющих.

Простите, а у вас сколько лет опыта на сервер-сайде?

Чтобы сравнить с автором. Может у вас еще впереди осознание этих тезисов, а может наоборот - у него.

Ну, автор просто сильно еще не дорос до понимания ORM, значит

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

Вот, например: https://hexdocs.pm/ecto/Ecto.Query.html

А где там написано что это ORM?

Я открыл первую страницу этой библиотеки и не нашел в тексте ни одного слова о том, что это и для чего

This guide is an introduction to Ecto, the database wrapper and query generator for Elixir.

Вы точно понимаете термин "ORM" так же, как и автор статьи выше?

Да. В эликсире нет объектов, поэтому релативный маппинг осуществляется в создаваемые на лету структуры. Если вам не интересно, как приготовить ORM правильно — просто не читайте. Если интересно — почитайте хотя бы на три страницы вглубь.

ORM — это дьявол во всех языках и реализациях. Используйте SQL.

Так про любой шаблонизатор или кодогенератор можно сказать.

Это обычно верно, но не во всех случаях

За 16 лет программирования за деньги в разных стеках, окружениях и культурах пришел к трем выводам. It depends. Все тлен. Связи/софтскилы решают.

Есть такое. Кто умножает познания, умножает скорбь.

  • В разработке приложений мало места для абстракций. Просто пишите нужный код.

  • А вот разработка библиотек, наоборот, основана на абстракциях

А ведь хорошо подмечено! При проектировании модуля неизвестно заранее где он будет применён, а вот в конкретных приложениях предметная область уже более-менее понятна и лишние абстракции ни к чему.

Что такое полные монады?

Эх, хабр, где же твои меткие вопросы. В оригинале never go full monad, и никто будто не понимает, что это вообще значит (раз вопросов не задают)

О, а то я тоже не понял что такое полные монады, и главное ни у кого вопросов.

Вероятно, имеется в виду не "полные монады", а "не уходите в монады полностью". То есть не пишите на джаве как на тру ФП языке. А такие заходы есть. Конкретно про джавовские ФП либы я мало знаю, а вот на котлин есть Arrow. И я хотел бы посмотреть на большой энтерпрайзный проект, написанный на этом.

Подравили, спасибо :) Долго искала что это, нашла, что это словосочетание хоть редко, но встречается. Но думаю, ваш вариант лучше :)

Про некоторые мысли хотелось бы почитать подробнее. Спасибо за перевод!

Мотаем на ус: будем писать подробнее. Рады, что понравилось.

Если найдем у автора пояснения к мыслям, переведем :)

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

И как вы после этого осознания живёте теперь? Мне правда интересно, без стёба.

Неопределенно. Хаотично распадаясь на маленькие песчинки от набежавшей океанской волны, но усилием воли снова собираясь в социальную телесную фигурку. Зачем? Ах, не спрашивайте, это так иррационально...

Да отлично вообще, спокойно. А в чем сомнения?

Хм, я думал, это каждому очевидно, что у человека база всего это эмоции и ощущения. Интеллект это лишь надстройка над. Чисто логически невозможно обосновать вообще ничего, включая надобность жить.

Я даже не знаю, что по всему этому сказать. Наверное, это хороший специалист, книгу его не читал.

Ощущение, что высказано за 5-6 кружкой пива в кабаке.

"В огороде бузина, а в Америке LGBT"

Java - трудно назвать язык скучным, в котором "нет пойнтеров", но есть "Null Pointer Exception". "Великий" он по объему написанного кода и количеству кодеров - это бесспорно.

ORM vs SQL - я лично предпочитаю SQL, но ORM-кода написано такое кол-во, что никуда не денешься. Ну и иногда ORM работает.

"Главная беда функционального программирования — это функциональные программисты" - о чем это он?

Что за фиксация на DynamoDB??

Serverless ему не нравятся, ну да оно трудное.

"Будущее за языками с постепенной зависимой типизацией" - python/typescript ??

И остальное какие-то банальности, причем неясно выраженные.

Что-то он хотел сказать, но я его дзэн не понял.

"Главная беда функционального программирования — это функциональные программисты" - о чем это он?

Вероятно про следователей догмы. Это иногда видно на примере котлина, который позволяет писать в очень широком диапазоне от кондового ООП до почти кондового ФП. Иногда люди увлекаются и пишут ФП форшмак там, где вопрос решается обычным циклом. Просто потому что "так надо". Это другой конец спектра относительно знаменитых абстрактных хэллоуворлд-фабрик.

«Главная беда функционального программирования — это функциональные программисты» — о чем это он?

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

«Будущее за языками с постепенной зависимой типизацией» — python/typescript ??

Нет, конечно. В этих языках типизация ущербная by design. Имеется в виду подобие Идриса с завтипами, но не тотальными: если тип вывести невозможно, то компилятор просто забивает и идет дальше.

Прошу извинить за душноту, но нигде намеков на Идрис я не увидал.

Тут волен каждый видеть то, что ему кажется он увидел в силу эффекта Барнума

Назовите хотя бы еще один более-менее прикладной язык с зависимой типизацией. Это же прямая цитата.

"Главная беда функционального программирования — это функциональные программисты" - о чем это он?

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

«Люди делятся на тех, кто уже знает, что монада — это моноид в категории эндофункторов, и тех, с которыми не о чем разговаривать.»

Достаточно посмотреть на их код в системе сложнее начального уровня.

Если что-то кажется мне простым — это точно что-то, чего я до конца не понимаю.

1 638.048 кг

Frontend-разработка — это кафкианский кошмар, который я больше не выношу.

Что не так?

Есть у меня проект, на довольно старой кодовой базе (vue2, вот это все). И без тестов. Решил покрывать тестами потихоньку, добавил jest 27 и vue-test - сломалась компиляция TS, проект полностью перестал собираться. Потратил часы чтобы найти нужные флаги и совместимые версии и зафиксировать их в package-lock. Бэк на котлине не обновлялся с того же времени - как минимум не ломается компиляция при добавлении новой зависимости.

Большинству плевать на ремесло программиста

Большинству плевать на любое ремесло

Плюс за причесывание статьи!

Простота — не данность. Она требует постоянной работы.

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

> ORM — это дьявол во всех языках и реализациях. Используйте SQL.
Дальше можно не читать. Посмотрю как автор имлементит DDD склеивая строчки sql

Sign up to leave a comment.