
Nikolay
12.01.2017
22:39:39
да, я думаю что он полагается на свой опыт, сколько там лет? и он знает как надо, а как не надо делать. но чаще сталкиваешься не с такими людьми, которые все знают, а с теми у которых разная степень знаний, и засунутости рук. для них большее количество ограничений могут быть хорошей дисциплиной
> но реакция на него слишком раздута
да просто всегда нужно держать в голове, что это все мнения - тогда проще воспринимать информацию

Vadim
12.01.2017
22:49:57
ну несколько падений продакшена, тоже неплохо работают в качестве повышения дисциплины, если не совсем запущенный случай.
а в запущенном и ограничения компилятора не помогут

Andrey
12.01.2017
22:53:25

Google

Nikolay
12.01.2017
22:54:10
произнеси это вслух, и поймешь что это отчасти здраво звучит
правдоподобно

Andrey
12.01.2017
22:55:19
Это называется софизм. И такие вещи только звучат здраво и правдободобно, а на самом деле хрень полная.

Vadim
12.01.2017
22:56:16
ну везде есть грань.
можно например ходить в скафандре по улице, дабы не заболеть

Andrey
12.01.2017
22:57:09

Vadim
12.01.2017
22:57:27
а ты считаешь что аналог ремня безопастности?)

Nikolay
12.01.2017
22:58:11
на одной работе достался scala проект от человека, который до этого писал на языках с динамической типизацией, и проект делался в процессе перехода с node-js на scala. я видел такие изощренные костыли, что пару раз пересматривал код в надежде что мне померещилось. но нет, не померещилось. когда первый раз компилил проект - было около 200 warning-ов компилятора. так что ничего совсем не мешает написать плохой код на чем угодно.
если брать аналогию с ремнями безопасности, то я бы советовал сначала без них, потом затянуть потуже, до посинения, потом ослаблять по мере роста уменя водить)

Andrey
12.01.2017
23:04:57
Проблема не в помехах а в помощи. Типы помогают написать проект лучше.
Но не делают работу за программиста.
В динамических языках никакой помощи нет, только тесты.

Nikolay
12.01.2017
23:05:00
но аналогия так себе
так вот uncle bob в этой статье и пишет что мол все ваши проблемы от того что вы тесты не пишите. пишите тесты

Vadim
12.01.2017
23:08:09
у меня уже рефлекс отработан, не обращать внимание на подобные утверждения)

Nikolay
12.01.2017
23:09:23
))

Google

Aleksei
13.01.2017
07:01:54
утро доброе

Nikolay
13.01.2017
07:14:45
Ребят, scalafx все
Её сломал скала плагин

Nikolai
13.01.2017
07:15:21

Vadim
13.01.2017
07:15:36
может уж сразу "скала все"?)

Dmitry
13.01.2017
07:25:28
Скала все, в яве есть лямбды и опшнл.

Nikolai
13.01.2017
07:29:04
Да там такой опшнл что лучшеб не было

Dim
13.01.2017
07:30:14

Artem
13.01.2017
07:30:46
какой уж таки есть ?

Andrey
13.01.2017
07:32:49
Ктонить пробовал настроить akka-http + scalajs + плагин workbench ?
Так чтобы плагин пересобирал клиент при сохранении. Как в clojurescript
И тишина...

Max
13.01.2017
08:14:56
Пятница... затишье перед бурей...

Nikolay
13.01.2017
08:28:32
я отдельно для scalajs проекта его использовал - удобно. чтобы настроить cross-project с беком - не пробовал

Andrey
13.01.2017
08:30:00

Diemust
13.01.2017
08:30:54
https://github.com/lk-geimfari/awesomo

Nikolay
13.01.2017
08:31:58
workbench вроде бы локальный сервер стартует для фронта, нет? пересборка сама происходит при изменении исходников

Andrey
13.01.2017
08:33:35

Nikolay
13.01.2017
08:34:09
понял. а смотрел какие настройки есть у sbt плагина workbench?

Google

Nikolay
13.01.2017
08:35:26
там наверное можно указать конкретый path для sources

Vadim
13.01.2017
08:36:39
а какое поведение ты хочешь с беком? файл бека сохранил и тебе и жс перекопилялся и бек заного поднялся?

Daniel
13.01.2017
08:43:36
утро доброе
хз, что он там ломает, только вчера писал, было всё ок

Andrey
13.01.2017
08:48:01

Alexander
13.01.2017
09:13:57

Юрий
13.01.2017
09:31:26

Andrey
13.01.2017
09:32:17
да, недавно совсем обновлялся и в целом работает

Vladimir
13.01.2017
10:43:38
Какой сейчас стильный модный метод избавиться от повсеместного прокидывания (implicit ec: ExecutionContext)?
При этом оставив кое-где за собой возможность кастомизации

Oleksandr
13.01.2017
10:45:36
implicit function type из дотти
моднее некуда

Denis
13.01.2017
10:46:44

Vladimir
13.01.2017
10:46:53
scalazшный?

Denis
13.01.2017
10:47:00
или мониксовый

Vladimir
13.01.2017
10:47:35

Denis
13.01.2017
10:48:51
Или ReaderT[Future, ExecutionContext, ?] в качестве F[_] :)

Vladimir
13.01.2017
10:49:20
Я знал, что такой вариант будет)

Alex
13.01.2017
10:49:29
доча будет я думаю года через полтора в лучшем случае

Denis
13.01.2017
10:49:41
Короче ИМХО прокидывать везде ExecutionContext это антипаттерн
по хорошему его надо на краю вселенной где то в run передать

Vladimir
13.01.2017
10:50:26
Угу, вот этим и хочется заморочиться, спасибо

Google

Denis
13.01.2017
10:50:46
Самое просто это использовать таски fs2 или monix

Diemust
13.01.2017
10:54:05
можно в абстракцию засунуть, например

Vladimir
13.01.2017
10:55:14

Denis
13.01.2017
10:56:34
Можно еще сильней
Работать относительно абстрактного F[_]
и сказать что F[_]: Monad
а уже потом сказать что это за F[_]

Admin
ERROR: S client not available

Denis
13.01.2017
10:57:32
в конце
типа def doSomehing[F[_]: Monad](repo: SomeRepo[F], otherDep: Other[F]): F[Result] = repo.getFoo.flatMap(foo => otherDep.bar(foo))

Vladimir
13.01.2017
11:01:24
в целом выглядит приятно, разве что каждый класс параметризовать относительно F придется

Denis
13.01.2017
11:01:48
это даже к лучшему
открывает пространство для творчества )
а тесты например можно писать относительно Id
Иногда полезно писать что F[_] это не Monad, a MonadError, тогда можно в doSomething обрабатывать ошибки.

Oleksandr
13.01.2017
11:50:58
@fomkin насчет подкаста -- было бы круто иметь онлайн-чат, для уточнений и вопросов

Vadim
13.01.2017
11:57:53
для онлайн-чата нужна онлайн трансляция)
а есть вообще кто будет в эфире слушать?

Alexey
13.01.2017
11:58:40
вы ведь стату собирали про такое не?

Vadim
13.01.2017
12:00:27
ну в опросе вопросов про онлайн трасляции не было, как и пожеланий со стороны отвечавших

Google

Daniel
13.01.2017
12:56:07

?Ivan
13.01.2017
12:57:04
мне кажется проще обсудить интересующие вопросы здесь в чате, чем пытаться все в онлайн засунуть.

Daniel
13.01.2017
12:58:20

Vadim
13.01.2017
12:59:05
да и правда было - извиняюсь)

Oleksandr
13.01.2017
13:00:28

Vadim
13.01.2017
13:03:45
ну можно написать в комментах к выпуску)

Daniel
13.01.2017
13:06:16
По мне так, вот пришел гость, получился классный выпуск. Интерактив это ведь вообще круто. Думаю в чатике есть люди, которые по какой-нибудь теме смогли бы что-нибудь дельное сказать. Плюс в чате подкаста параллельно бы шло обсуждение (возможно), что тоже хорошо. Ну и в конце концов, вы ведь все равно собираетесь, записываете все, это ведь не такая сложная задача организовать онлайн?)

Vadim
13.01.2017
13:17:00
ну все понимают что круто. но тут надо, чтобы нашлось и время и руки до этого дотянулись. как показывает реальность, пока что-либо такое сделается, уже выйдет несколько выпусков)

KrivdaTheTriewe
13.01.2017
13:30:34
вообще да, если будет онлайн трансляция , то будет хорошо, я не думаю , что это сильно усложнит Вам жизнь

Aleksey
13.01.2017
13:32:35
У нас сейчас где-то 300 слушателей. В девзене на пример больше 3000. На трансляцию к ним приходит в районе 30-50 человек. Следовательно к нам на трансляцию будет приходить 3-5 человек.

Aleksei
13.01.2017
13:33:10
не тот уровень звездности? =) ну просто писать вам комментарии хотя бы во время подкаста уже радость

Aleksey
13.01.2017
13:33:38
Думаю мы пока не созрели до трансляций.

KrivdaTheTriewe
13.01.2017
13:36:08
Есть некоторое пожелание , брать на обсуждение меньше библиотек ( или фишечек ) , но изучать их не во время трансляции.
А еще очень хочется услышать подкаст о оптимизации кода на скале в плане перфомонса

?Ivan
13.01.2017
13:38:45
вот кстати раз уж заговорили про трансляции. Можно как-то mp3 делить, пока до работы и обратно едешь не успеваешь все прослушать, а перемотка на android нормально не работает 3 проги уже попробовал.

KrivdaTheTriewe
13.01.2017
13:39:40

Aleksey
13.01.2017
13:40:27

?Ivan
13.01.2017
13:40:29