Vasily
x
x
у меня так:
x
Hog
Igor
> 2019
> писать на джава idea под ведроид и не иметь 128 Гб ОЗУ
Igor
Dr. Friedrich
А меня Дон Сайм ретвитнул! :3
Dr. Friedrich
Vasily
Igor
Igor
Хотя я не понял, к чему ты
Крылатый
Крылатый
x
ВЫ ЧТО НА НОУТАХ ДЕВЕЛОПАЕТЕ?
Vasily
x
там интересные эффекты могут быть если чипсет решит что мало электричества
Ayrat
Ayrat
(я не знал что у тебя твиттер есть)
Vasily
x
Ноут всегда в розетке
а вот не раз замечал, что на бумаге более быстрый ноут сливает "более слабому" воркстейшену, даже из розетки
x
обьяснения не знаю
Крылатый
Dr. Friedrich
Крылатый
Dr. Friedrich
Niet!
Hog
Dr. Friedrich
Ну и таки я не делал же эту фичу
Dr. Friedrich
Её вообще никто не делал, она просто получилась
Dr. Friedrich
Я и раньше тыкался в continuous testing в F#-проектах, но толи я тупил, толи оно и правда было сломано тогда.
Dr. Friedrich
А сейчас круто работает. Надо только coverage не забывать включать
Крылатый
Форнёвер тыкался в фичу, думая, что она сломана, чинил баги. Так он и запилил фичу.
Dr. Friedrich
Потому что оно по данным из coverage понимает, какие тесты нужно перезапускать при изменении кода.
Vasiliy
Народ, а есть ссылка на норм чат с .net? надо спросить кое-что по google calendar api
Vladislav
https://t.me/pro_net
Vladislav
ну допустим
Aleksandr
О, а у них в описании .NET Framework на передовой
Aleksandr
Любопытно
Vasily
В пронете сидят известные байтоебы
Aleksandr
А также половина активного состава этого чата:)
Vasily
Vasily
!!!!!!
Hog
Vasily
Я вон на фшарп умудряюсь байтоебить
Aleksandr
Vladislav
Shub
сегодня на работе был день офигительный историй
некто наваял модули трех уровней вложенности с именами типа Helprs, в которых разместил ЛИНЗЫ для типов в стиле `type T = {Name: string; Age: int}
Shub
на вопрос "зачем?" сказал - "чтобы не писать List.map (fun e -> e.Name) "
Shub
и в этот момент я понял, почему уходящие из компании люди согласны писать на го и на чистом жс без фреймворков
Ayrat
Vasily
Илитка
Vasily
Понаберут людей, умеющих проходить собесы...
Ayrat
Анна
Поэтому у Васи в конторе собесов нет!
x
Анна
Ayrat
Vasily
Такого уровня английского я не ждал, конечно... https://youtu.be/ziKr34qZxII
Romɑn
Анна
Danil
Рюкзак как у меня, кажись
Vasily
Danil
Oleg
Shub
Vladislav
ооо
Shub
открыв рандомный файл в проекте нашел код (орфография оригинала сохранена)
Shub
[<HttpGet; Route("{id}/operations/select/getUserStatus")>]
member x.UserStatus(id:string, ?usernameOverride ) =
let user = usernameOverride |> Option.isNull ( Context.CurrentUser() )
Business.Logic.Services.User.getUserStatus fcid user
|> Async.map(toJson>>JsonValue>>okWithJsonContent)
|> FCs.validateFcid fcid
|> Async.StartAsTask
Shub
минут за 15 я переписал его так:
Shub
[<HttpGet; Route("{fcid}/user")>]
member x.UserStatus(fcid:string, ?user) =
async {
let user = defaultArg user (Context.CurrentUser())
let! userStatus = getUserStatus fcid user
let response = JsonValue (toJson userStatus) |> Ok
return FCs.validateFcid fcid response
} |> Async.StartAsTask
Shub
оставим пока в стороне тотальную шизу с валидацией ОТВЕТА
Shub
в общем, спрашиваю у коллег: какой вариант вам нравится больше, первый или второй?
Vladislav
Ayrat
let user = defaultArg user (Context.CurrentUser())
это кстати так себе, потому что даже если тебе прилетит user, Context.CurrntUser() вычислится жадно
Vladislav
Ayrat
Option.defaultWith(fun _ -> ...)
Shub