• Совершенный цикл for
    0
    Как-то так (можно и в одну строчку свернуть):
    for {
      j =  0
      i <- 0 to 5
      j += 1
    }
    


    Но, с большой вероятностью, за такой код в scala сообществе закидают тапками )
  • Совершенный цикл for
    +6
    На самом деле там 3 конструкции, for не более чем сахар и написать можно еще так:

    for {
      a <- 0 to 3
      b <- 1 to 4
      c <- 2 to 5
    } {...}
    
  • Как Kafka стала былью
    +1

    Если честно, то от статьи ожидал большего. По сути, это пересказ документации по настройке exactly-once. Хотелось бы услышать больше, как Kafka справляется с ролью mq, для которой она подходит всётаки ограниченно. Какие были проблемы и решения. Может быть пришлость менять архитектуру или подходы.


    Насчёт exactly-once в Kafka мои личные наблюдения, что сильно полагаться на него не стоит. Приложения с поддержкой at-least-once семантикой в итоге имеют меньше проблем и можно добиться куда более высокой производительности. Exactly-once имеет смысл при процессинге kafka — > kafka да и то далеко не всегда.

  • Как я организовал хранение фотографий
    0
    Capture One поддерживает вроде альбомы в проектах и Raw+JPG?
  • Как украсть деньги с бесконтактной карты и Apple Pay
    +1
    Очень часто это как раз ограничение на терминале. Например, когда в Латвии ограничение по бесконтактной оплате было 15€, я в других странах без проблем делал покупки на большие суммы. Например, в Польше оплачивал и 20 и 25€. Т.е. ограничение в 15€ было не на стороне банка, а только в терминале.
  • Прощай, Google Maps
    +1
    Приходилось как-то настраивать nginx в качестве кеширующего прокси перед mapbox. Ничего сложного, гуглится легко. Вот прям первая ссылка: coderwall.com/p/--wgba/nginx-reverse-proxy-cache-for-openstreetmap
  • Spark SQL. Немного об оптимизаторе запросов
    0
    Было бы классно, а то в своё время пришлось потратить много времени на разбор данного вопроса. А так готовая статья на Хабре — красота )
  • Spark SQL. Немного об оптимизаторе запросов
    0
    Спасибо, хорошее интро. Но немного коробит от постоянного сравнивания Spark с РСУБД. Стоило бы ещё рассказать в каких случаях происходит pushdown предикатов, а когда нет. Хотя бы для основных источников, как orc, parquet, hive.
  • Понимаем implicit'ы в Scala
    +1
    Бездумное использование implicit, конечно же может привезти к тому, о чём вы пишите. Всё надо делать с умом. Конкретно имплиситными параметрами любят злоупотреблять, но есть случаи, где они полезны. Один из примеров я привел в статье — ad hoc полиморфизм. Т.е. в данной строчке
    def as[A](path: String)(implicit reader: Reader[A]): Reader.Result[A]

    он необходим, чтобы была возможность в дальнейшем писать такой код:
    config.as[String]("path")

    Это всё же не то же самое, что
    config.as[String]("path")(stringReader)

    Вариант с имплиситным параметром более гибкий и простой в использовании.
  • Понимаем implicit'ы в Scala
    0
    Действительно есть такое. Из-за проблем с обратной совместимостью и крупные игроки, типа Confluent, бывает переходят обратно на Java. С другой стороны, это позволяет языку двигаться вперед и развиваться. В принципе, это и послужило причиной появления Dotty.
  • Понимаем implicit'ы в Scala
    0
    На самом деле, как правильно заметил Envy, компилятор хорошо помогает в отладке. Просто нужно понимать куда смотреть. Зато никаких рантайм проверок, всё на этапе компиляции и в итоге код получается безопаснее.
  • GitLab CI: ветки больше не нужны
    +6
    Ветки обычно используется не для выкатки кода при Continuous Integration а для разделения стабильной части когда (например master) и кода в разработке (development). Мне кажется вы путаете понятия.
  • Как использовать implicit'ы в Scala и сохранить рассудок
    +1
    Очередной пересказ документации это конечно хорошо. Но лучше бы уж, хотя бы, подробнее на тайп классах остановились.
  • No way back: Почему я перешел с Java на Scala и не собираюсь возвращаться
    +1
    А кто сказал, что со скалы люди уходят? Мне, кажется, наоборот, за последний год появилось достаточно много новых вакансий. По крайней мере на LinkedIn отбоя от рекрутеров нет и, периодически, попадаются предложения от серьезных кампаний. В сфере бигдаты скала уже практически стандарт, благодаря Spark и Flink.

    Я вот не считаю, что Kotlin прямой конкурент Scala. Как раз он более походит на Java++ и у него значительно больше шансов пойти дорогой Coffeescript.
  • No way back: Почему я перешел с Java на Scala и не собираюсь возвращаться
    +1
    Лично я, в последнее время, слышу о скала как раз достаточно много, и вижу, что язык развивается и достаточно быстро. Недавно вышла Scala 2.12, есть Scala Native, ScalaJS и прочие. Ошибочно относиться к скале, как к Java++. Это совершенно другой язык, со своей философией и подходом к разработке. Конечно, можно писать код так, как писали бы его на джава, но это, в итоге, будет причинять только боль. И потом будут появляться статьи из серии, почему я бросил скалу и вернулся на джаву.

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