LINUX.ORG.RU

Попробовал Scala. Больше не хочу.

 ,


3

7

Решил задачу на Scala невероятно красивым способом? Расскажи об этом своему clojure-коллеге. Только окажется, что он ушел три часа назад, оставив тебе записку «Используй Map». — Daniel Worthington-Bodart

Мне кажется, это «бесчеловечный» язык. Удивительно, что он сделан вроде бы человеком и вроде бы для людей. — Clinton Begin

Впервые я познакомился со Scala шесть лет назад. Тогда мне пришлось иметь дело с самодельной build-системой, написанной на Scala и использовавшей Scala в качестве языка для build-скриптов. Scala мне сразу не понравилась:

1. Build-скрипт компилировался по три минуты после внесения правок, и это еще до начала непосредственно сборки,
2. Синтаксис скриптов был совершенно бессистемный. Где-то было def где-то var. Где-то знак =, где-то фигурные скобки. Такое впечатление, будто кто-то шатался по скриптам, разбрасывая случайным образом знаки пунктуации.

Правда, я был готов признать, что это просто неправильное использование хорошего языка. Build-скрипты — это в некотором роде одноразовая задача, и это не самый лучший способ освоить сложный язык. Ну и идея вывода типов мне всегда была симпатична, начиная с моего опыта с Haskell.

Но вот в последние две недели мне пришлось разрабатывать простое RESTful API для большого и сложного набора данных. Я к Scala больше не притронусь!

Scala мы выбрали потому, что весь проект сделан на Java и XSL, с большим количеством обработки XML. Вроде как Scala — очевидный способ повысить продуктивность, особенно принимая во внимание встроенную в язык поддержку XML.

Но не тут-то было!

(Compile Times, Libraries and the Community, Magic Syntax, Everything is a Type, ‘Local’ Type Inference...)

Много о чем еще можно было бы написать. Неразбериха в инструментах сборки. Полная безнадега в поддержке Scala в IDE. Мешанина из «типов типов». Вечная копипаста с case class'ами. Но сказанного достаточно: всего этого хватило, чтобы затормозить разработку как минимум на две недели. Хватило, чтобы расхотелось когда-либо иметь дело со Scala.

Если вы дочитали до конца, то наверняка выделили лейтмотив моего текста. Он заключается в том, что Scala — неюзабельный язык. Я полагаю, изначально это был некий полигон для языковых экспериментов, который почему-то превратился в довольно распространенный язык. Не вижу ни одной убедительной причины в пользу Scala; есть много других языков, чтобв поэкспериментировать с ФП; если уж не терпится испытать сильные системы типов (а вам должно хотеться!) — попробуйте Haskell. Я допускаю, что, может быть — может быть! — вам удастся что-то такое проделать со Scala.

Но, ради всего святого, не пытайтесь использовать ее в продакшене.

Ответ на: комментарий от Deleted

Это элементарно, ты не пригоден для работы в команде

В команде непрофессионалов — да, непригоден.

твой код подчиненные не смогут разобрать

Профессионалы — смогут.

твой код никто кроме тебя не сможет поддерживать

Профессионалы — смогут.

3:0

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

В команде непрофессионалов — да, непригоден.

Ты себя чтоли к профессионалам отнес? Сертификат сеньйора не покажешь?

Профессионалы — смогут. x2

Рекомендую поискать, судя по твоим соплям от скалы, ты прямо таки бесишься от чужого кривого кода, а отчегото веришь что остальные нечто рожденное твоими отростками ягодиц будут терпеть.

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

Сертификат сеньйора не покажешь?

Так называемые «сертификаты» — это бумажки, которыми можно подтереться. Если мне на собеседовании попадается чувак, обвешанный сертификатами, я сразу гоню его ссаными тряпками. Ибо не придумаешь лучшего свидетельства, что перед тобой раздолбай и бездельник, выучивший сотню-другую баззвордов.

А у тебя, дай догадаюсь, такой сертификат есть? Правда ведь?

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

Так называемые «сертификаты» — это бумажки, которыми можно подтереться. Если мне на собеседовании попадается чувак, обвешанный сертификатами, я сразу гоню его ссаными тряпками.

Заклинание «призыв понтующегося неофита» как всегда сработало 8)

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

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

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

Кто они, эти твои профессианалы? Сможешь назвать хотябы троих? Или они у тебя сферические в вакууме?

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

Профессионалы — смогут.

Смочь-то, может и смогут, только станут ли, а если и станут, то как быстро тебя пошлют?

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

Кто они, эти твои профессианалы? Сможешь назвать хотябы троих? Или они у тебя сферические в вакууме?

Нет, не сферические. Работают в моем hi-tech стартапе. Но их имена ничего не скажут тебе.

Vuvuzela
() автор топика
Ответ на: комментарий от anonymous

Смочь-то, может и смогут, только станут ли, а если и станут, то как быстро тебя пошлют?

Вот ведь незадача, мы работаем вместе не первый день, и, знаешь, почему-то никто никого не посылает. ЧЯДНТ?

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

Уважаемый специались ведь сможет представить нам примеры своего хитроумного кода, в которых не сможет разобраться code-monkey, но сообщество профессионалов с легкостью поймет и оценит высокий уровень специалиста?

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

Работают в моем hi-tech стартапе
моем
hi-tech

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

Но вы ведь сможете поделится с нами информацией хотя бы о том, в какой области работает ваш стартап?

trex6 ★★★★★
()
Последнее исправление: trex6 (всего исправлений: 1)
Ответ на: комментарий от Vuvuzela

Что же ты наделал, зараза?! Я от смеха не могу уснуть.

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

Профессионалы — смогут. Но зачем?!

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

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

В общем, перефразирую известное высказывание: Любой дурак может написать код, понятный профессионалу. Хорошие программисты пишут код, понятный даже джуниору.

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

Меня бы больше интересовало доказательство наличия бумажки и заведомого непрофессионализма, ты же гонишь ссаными тряпками сразу

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

Работают в моем hi-tech стартапе.

Писать на жабе для себя?

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

То есть нужно будет нанимать специальных профессионалов, читающих твой код? Сильно

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

Но их имена ничего не скажут тебе.

Ни у них, ни у их друзей, знакомых нет профиля ни в одной соц сети, они не участвовали ни в одной сетевой дискуссии (на формумах, в списках рассылки и прочее) под идентифицирующими их именами? Ты собрал команду анонимов?

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

не первый день

А который день вы работаете вместе?

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

не посылает

А посылал?

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

ЧЯДНТ?

Не делаете или делеаете нерегулярно code review?

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

моем hi-tech стартапе

<vanga-mode>Который развалится в течении двух лет</vanga-mode>

anonymous
()
Ответ на: Профессионалы — смогут. Но зачем?! от shadow_of_shadow

В общем, перефразирую известное высказывание: Любой дурак может написать код, понятный профессионалу. Хорошие программисты пишут код, понятный даже джуниору.

+1. По-моему очень верная мысль.

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