Комментарии 52
Я не верю в будущее Kotlin'а
+36
Часто слышу про будущее котлина, и не понимаю, что имеют ввиду. Котлин не заменит джаву, конечно, но как удобный и совместимый с джавой язык он будет жить и развиваться, как, например, груви. И люди, которых не устраивает джава как язык, будут иметь альтернативу. Думаю, всё у JetBrains получится — они делают отличные продукты, уверен, что и котлин получится не хуже.
+9
Поздновато просто. Года 3 бы назад…
+4
Просто альтернатив очень много уже.
+2
Вы так говорите, как будто это что-то плохое.
+7
10 плохих альтернатив хуже, чем одна хорошая. JetBrains сейчас строят велосипед вместо того, чтобы вкладывать усилия в уже существующий язык с 12-летней историей.
+9
Обычно хуже, да. Но как вы оценили «плохость» этих альтернатив? Скала безусловно хороший инструмент, но как и любое решение не подходит для всех случаев и предпочтений.
+3
Покажите, ради интереса, хоть одну нишу или задачу, где Kotlin был бы предпочтительнее, чем Scala?
0
Например, разработка большой командой, где найти столько scala-программистов просто невозможно, а скорее всего и нет смысла. А достаточно простого языка, где имея приличные гайдлайны мог бы работать любой толковый «пхп-программист».
0
Сложность scala — это какой-то странный миф. Ни кто же не предлагает сразу писать как на Haskell.
Отличие между scala и kotlin по «фичам» лежит во многом в той области, которую рядовой разработчик в явном виде применять не должен.
Отличие между scala и kotlin по «фичам» лежит во многом в той области, которую рядовой разработчик в явном виде применять не должен.
+2
Ни кто же не предлагает сразу писать как на Haskell
Может найтись человек в команде, который будет писать хардкорный FP-код на Скале. Тогда другим так или иначе придётся учить Скалу по полной, чтобы как-то понимать, что написано.
+3
Если запретить подключать к проекту scalaz, shapeless и тому подобные вкусности, то ни чего жутко страшного такой человек не напишет.
Высокоуровневый FP-код можно и на котлине писать.
Высокоуровневый FP-код можно и на котлине писать.
+5
В любом случае Скала не за 2 дня учится. Kotlin можно осилить за 2 дня. Скалу — нет.
+1
За 2 дня программировать не научиться. Даже просто концепции ФП (которые есть в котлине) не освоить.
Что касается скалы, то Programming in Scala я где-то за выходные и освоил, после чего мог программировать. Через пару недель уже помогал людям на stackoverflow. Но я-то был знаком с C# и LINQ.
Мне котлин на базовом уровне не показался сильно проще: он ни чуть не менее нагружен синтаксическими конструкциями.
Да, в скале есть куда углубляться, но люди вполне на ней пишут, не зная как работает `CanBuildFrom`.
Что касается скалы, то Programming in Scala я где-то за выходные и освоил, после чего мог программировать. Через пару недель уже помогал людям на stackoverflow. Но я-то был знаком с C# и LINQ.
Мне котлин на базовом уровне не показался сильно проще: он ни чуть не менее нагружен синтаксическими конструкциями.
Да, в скале есть куда углубляться, но люди вполне на ней пишут, не зная как работает `CanBuildFrom`.
+2
Programming in Scala за выходные? 800 страниц?
+2
Первую версию, она поменьше.
И не полностью: без Combinator Parsing и далее (не самая нужная на первое время часть). Также я к тому времени знал, что в первой части устаревшее описание коллекций, так что их тоже пропустил, прочитав про них в другом месте (скорее всего на docs.scala-lang.org/).
Это где-то 400 страниц + описание коллекций.
800 за 2 дня тоже не кажется чем-то невероятным.
И не полностью: без Combinator Parsing и далее (не самая нужная на первое время часть). Также я к тому времени знал, что в первой части устаревшее описание коллекций, так что их тоже пропустил, прочитав про них в другом месте (скорее всего на docs.scala-lang.org/).
Это где-то 400 страниц + описание коллекций.
800 за 2 дня тоже не кажется чем-то невероятным.
+2
Не знаю, как вы там книги по программированию читаете, по диагонали скорее всего, не вникая в суть каждой строчки. Лично я пытаюсь полученные знания усвоить. У меня параллельно открыта среда разработки, в которой я играюсь с вещами, о которых только что прочитал.
+1
Много раз слышал о таком. У меня так не получается. Мне проще сначала прочитать полный курс полностью как художественную литературу, а потом уже приступить к применению знаний, попутно находя ответы на возникающие вопросы, но уже в других источниках. Иначе очень трудно себя загонять в рамки только того, что уже прочитал.
При чтении Programming in Scala у меня, кстати, тоже был открыт REPL на случай непонятных моментов, но им я мало пользовался.
При чтении Programming in Scala у меня, кстати, тоже был открыт REPL на случай непонятных моментов, но им я мало пользовался.
0
Хорошо. Я соглашусь, что можно за 2 дня освоить основы Скалы, но только если до этого был опыт с ФП-языками типа Haskell или Clojure.
+2
Если в наличии есть только «толковые пхп-программисты», то я бы такой проект и делал на php, используя skillset людей по назначению.
Я с трудом себе представляю проект такого размера, чтобы переобучение большой команды php-программистов (даже не java) и дальнейшее написание и поддержание было бы сколько-то экономически оправдано.
Я с трудом себе представляю проект такого размера, чтобы переобучение большой команды php-программистов (даже не java) и дальнейшее написание и поддержание было бы сколько-то экономически оправдано.
0
Люди, которых не устраивала Java-как-язык, уже 10 лет (формально) или года 3-4 (реально) как имеют альтернативу и ей вполне себе пользуются. У альтернативы вполне себе есть фреймворки, которые не стыдно выставлять в production, есть пул людей, которые это уже знают, имеют опыт и готовы применять за вознаграждение, есть потребности со стороны рынка, в том числе российского. Есть в конце концов курсы и сертификации, не говоря уже о натурально сотнях книжек, при большом желании — даже на русском.
Что Kotlin, что Ceylon — как были, так, в общем, и остаются карманным языком для одной организации. Ни реальной, ни даже формальной жизни как-то не видно.
С точки зрения освоения языка — у меня большие сомнения в том, что формат спортивного программирования хорошо сочетается с изучением средств разработки и будет способствовать привлечению интереса…
Что Kotlin, что Ceylon — как были, так, в общем, и остаются карманным языком для одной организации. Ни реальной, ни даже формальной жизни как-то не видно.
С точки зрения освоения языка — у меня большие сомнения в том, что формат спортивного программирования хорошо сочетается с изучением средств разработки и будет способствовать привлечению интереса…
+12
Я [тоже?] фанат scala, но позвольте поправить:
Потребность со стороны российского рынка ничтожно мала, что печально.
Сертификация от Codility, мягко говоря, не внушает доверия. Если подробнее: там дается одна олимпиадная задача и качество кода не учитывается. Учитывается корректность результата и производительность.
А так да, регулярно обновляющиеся фреймворки, довольно много библиотек, исчерпывающая документация и готовое помочь сообщество.
Потребность со стороны российского рынка ничтожно мала, что печально.
Сертификация от Codility, мягко говоря, не внушает доверия. Если подробнее: там дается одна олимпиадная задача и качество кода не учитывается. Учитывается корректность результата и производительность.
А так да, регулярно обновляющиеся фреймворки, довольно много библиотек, исчерпывающая документация и готовое помочь сообщество.
+1
Я не фанат, я все языки программирования ненавижу одинаково :)
Потребности сложно сравнивать. Мой критерий простой — когда на рынке есть несколько сотен вакансий — то, если не иметь особенных дополнительных аппетитов, работу найти можно. В конце концов, я прямо сейчас знаю 2-3-4 команды/проекта, которые активно нанимают Scala-программистов.
Сертификация от Codility — вы про ту демку говорите или про настоящую сертификацию? Настоящая — она проводится по заданиям той компании, которая нанимает (у каждой компании, как правило, они будут разные — хотя есть и возможность выбрать из пула готовых задачек у самой Codility). Дальше все сильно зависит от злостности конкретного нанимателя — обычно это 4-5 задачек, но я слышал и о том, что некоторые загоняли в Codility по 40-50 мелких вопросов с жестким лимитом типа «5 минут на вопрос, 2 часа на все вместе». Все результаты в любом случае отсылаются работодателю, как правило, топ 5-10 все равно отсматриваются вручную и после сертификации все равно делается интервью, на котором, в том числе, обсуждаются уже и вопросы качества кода.
Потребности сложно сравнивать. Мой критерий простой — когда на рынке есть несколько сотен вакансий — то, если не иметь особенных дополнительных аппетитов, работу найти можно. В конце концов, я прямо сейчас знаю 2-3-4 команды/проекта, которые активно нанимают Scala-программистов.
Сертификация от Codility — вы про ту демку говорите или про настоящую сертификацию? Настоящая — она проводится по заданиям той компании, которая нанимает (у каждой компании, как правило, они будут разные — хотя есть и возможность выбрать из пула готовых задачек у самой Codility). Дальше все сильно зависит от злостности конкретного нанимателя — обычно это 4-5 задачек, но я слышал и о том, что некоторые загоняли в Codility по 40-50 мелких вопросов с жестким лимитом типа «5 минут на вопрос, 2 часа на все вместе». Все результаты в любом случае отсылаются работодателю, как правило, топ 5-10 все равно отсматриваются вручную и после сертификации все равно делается интервью, на котором, в том числе, обсуждаются уже и вопросы качества кода.
+5
когда на рынке есть несколько сотен вакансий
В Питере 3 компании ищут java-программистов указывая знание scala как дополнительный плюс.
Может в Москве и получше, но Москва — это еще не вся Россия.
Я про ту, за которую они медальку дают.
Не правильно вас понял.
+3
А я где-то написал, что это единственная альтернатива? Я написал о том, что ребята делают отличную альтернативу, которая найдет своего (пусть и немногочисленного) разработчика. А на счет скала — так это аргумент кулика одного болота: зачем нужны альтернативы, если есть суперязык, который сам себе и на карусельке покататься и на балерин посмотреть?
+3
есть предположение, которое соблазнительно проверить практикой: на Kotlin'e можно разрабатывать быстрее, чем на Java. В формате спортивного программирования это и можно проверить. А расписание специально составлено так, чтобы желающие освоить язык имели две недели на оттачивание навыков и реализацию желания.
0
на олимпиаде допускается только один язык (и это — Kotlin);
Хотите проверить — допустите Kotlin и Scala.
+3
нет, в этот раз точно не будем. Мы ж не холивара ради.
А по Scala мы проводим тренинги.
А по Scala мы проводим тренинги.
+1
В реальности альтернативы будут выглядеть не «Kotlin vs Java», а «изучить и применить Kotlin vs применить уже известную Java» — и я *сильно* сомневаюсь, что в формате спортивного программирования необходимость внезапно изучать новый язык и особенности его фреймворка даст какие-то преимущества.
Если уж сравнивать — то как минимум время «применения» и «изучения» должно быть одного порядка, т.е. разрабатываемый на Kotlin проект должен быть на несколько недель-месяцев, а быстрее-быстрее-быстрее-за-2-часа.
Если уж сравнивать — то как минимум время «применения» и «изучения» должно быть одного порядка, т.е. разрабатываемый на Kotlin проект должен быть на несколько недель-месяцев, а быстрее-быстрее-быстрее-за-2-часа.
+1
С удовольсткием наблюдаю за развитием Котлина. Язык неплохой, однако для его широкой популяризации необходимо, чтобы он и занял определенную практическую нишу. А для этого нужна демонстрация не самого языка, а решений реальных задач. Груви именно этим и взял — концентрация не на самом языке, а на вещах, которые при помощи него можно делать очень просто. Надо чем-то завлечь пользователей, например простотой и удобством, с одной стороны оставаясь совместимым с Java, с другой — предлагая свои, более удобные API, DSL-и и builder-ы, библиотеки, инфраструктуру и набор тулзов; плюс что-то, чего нет у других, напр. компиляция в JS. Чтобы хотелось иметь:
— STL — отчасти враппер для java API, отчасти набор полезных утилит и абстракций (Guava-like).
— Веб фреймворк (Kara — блеск!)
— ORM-библиотека. Хочется что-то вроде скаловского Squeryl.
— Простые в использовании средства работы с XML, type-safe меппинга объектов в XML (наподобие JAXB, XMLBeans, etc) и JSON, а также простая имплементация Restful и WS.
— Плагин для Eclipse!
— STL — отчасти враппер для java API, отчасти набор полезных утилит и абстракций (Guava-like).
— Веб фреймворк (Kara — блеск!)
— ORM-библиотека. Хочется что-то вроде скаловского Squeryl.
— Простые в использовании средства работы с XML, type-safe меппинга объектов в XML (наподобие JAXB, XMLBeans, etc) и JSON, а также простая имплементация Restful и WS.
— Плагин для Eclipse!
+6
Как раз сейчас пишу в свободное время github.com/cheptsov/Exposed :-)
+3
Упс, от другого аккаунта запостил
+2
Надо попросить, что ли, Kotlin на сравнялку языков добавить — мне даже стало интересно, что есть какое-то количество проектов, которые на нем пишутся…
+2
Хорошо бы страничку со списком всех библиотек и тулов для kotlin
+2
Плагин для Eclipse на подходе
0
Ты жесток. Надо было как-то помягче, что ли. :)
+6
Пройду мимо холивара о будущем языка и скажу спасибо за организацию мероприятия, обещающего быть интересным!
> Подробное расписание — kotlin.jetbrains.org/challenge/schedule
Nice guys publish iсal. Реквестирую календарь, который можно импортировать.
> Подробное расписание — kotlin.jetbrains.org/challenge/schedule
Nice guys publish iсal. Реквестирую календарь, который можно импортировать.
+6
Напишу немного не по теме.
Постепенно, незаметно, но на продукты данной фирмы перешли все мои знакомые, несколько компаний в которых я работал, и я сам (для домашнего использования).
Вот зачем приходить и писать: «Язык не нужен». Вы правда считаете, что отдел разработки неожиданно поймет всю бренность бытия и свалить жить на Гоа, и писать на хаскеле?
Я хочу сказать вам спасибо за ваши продукты.
И в первый день октября пожелать успехов.
Всем добра.
Постепенно, незаметно, но на продукты данной фирмы перешли все мои знакомые, несколько компаний в которых я работал, и я сам (для домашнего использования).
Вот зачем приходить и писать: «Язык не нужен». Вы правда считаете, что отдел разработки неожиданно поймет всю бренность бытия и свалить жить на Гоа, и писать на хаскеле?
Я хочу сказать вам спасибо за ваши продукты.
И в первый день октября пожелать успехов.
Всем добра.
+6
Добро — это хорошо. Но добро — ограниченный и плоховосполнимый ресурс. Поэтому его нужно направлять в правильное русло (Scala) и не тратить впустую.
+1
было бы идеально, если бы JB вкладывалась в скалу, только слабо себе представляю как: использвание скалы вместо своего языка? Боюсь тогда бы качество их продуктов зависело бы от сторонней организации (Кто там скалу сейчас разрабатывает, все еще тот институт в Швейцарии?).
Если только jetbrains сделали бы партнером, включили бы в стостав основателей и т.д. (или как там это делается), чтобы они тоже могли ее разрабатывать или фиксить, тогда еще ладно. Все таки JB контора известная своим качеством в первую очередь, поэтому лишние стороннние баги им ни к чему.
Если только jetbrains сделали бы партнером, включили бы в стостав основателей и т.д. (или как там это делается), чтобы они тоже могли ее разрабатывать или фиксить, тогда еще ладно. Все таки JB контора известная своим качеством в первую очередь, поэтому лишние стороннние баги им ни к чему.
+2
Боюсь тогда бы качество их продуктов зависело бы от сторонней организации
А разве сейчас они не зависят от сторонних библиотек? Что у них там прям все библиотеки свои писанные?
0
речь не о либах а об языке, который они используют для написания своих продуктов. Раньше это была только жава, теперь на котлин переходят. Свой язык намного эффективней стороннего конечно.
0
Свой язык намного эффективней стороннего конечно
Эффективней в каком плане?
0
— Помните, младшая сестра жаловалась, что никак не освоит Kotlin, потому что нет русской документации? Теперь все изменилось
Именно так. Я сказал ей что она дура, и пусть лучше учится гладить брюки… она послушала дельный совет и теперь ездит на Infinity!
Именно так. Я сказал ей что она дура, и пусть лучше учится гладить брюки… она послушала дельный совет и теперь ездит на Infinity!
-2
Мне показалось или начало сдвинули на один день?
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Новая олимпиада по новому языку: открываем регистрацию