Size: a a a

R (язык программирования)

2020 October 20

PU

Philipp Upravitelev in R (язык программирования)
если учесть, что r функциональный и вмя система s3 классов предполагает дженерики и диспетчеризацию методов, а не методы каждого класса... в общем, на твой вопрос положительно ответят только те, кто пишет с использованием r6 модели. а таких единицы и это единичные задачи, имхо
источник

AS

Alexander Semenov in R (язык программирования)
Ок. Пойду пЕтонистов поспрашиваю.
источник

PU

Philipp Upravitelev in R (язык программирования)
если ооп - вершина творения, то почему тогда придумали функциональную скалу на базе джавы, которая прям квинтэссенция ооп
источник

PU

Philipp Upravitelev in R (язык программирования)
спроси этого препода :)
источник

AS

Alexander Semenov in R (язык программирования)
Он меня и так скоро из класса выгонит =)
источник

AS

Alexander Semenov in R (язык программирования)
Я с утра с ним ещё спорил за любовь к "элегантным однострочникам".
источник

PU

Philipp Upravitelev in R (язык программирования)
он еще и код не комментирует и не документирует, наверное
так как "хорошо написанный код очевиден", да?
источник

AS

Alexander Semenov in R (язык программирования)
Наоборот люто ратует за PEP8 и подробную документацию в docstrings.
источник

AS

Alexander Semenov in R (язык программирования)
Так-то он всё правильно рассказывает, но у него просто отсутствует специфика для Data Engineer. Как будто готовит студентов драйвера для видеокарт писать. Отсюда и всякие декораторы с ООП в программе курса.
источник

PU

Philipp Upravitelev in R (язык программирования)
Alexander Semenov
Наоборот люто ратует за PEP8 и подробную документацию в docstrings.
это я одобряю
источник

VV

Vladimir Volokhonsky in R (язык программирования)
Alexander Semenov
Прохожу курс Data Engineer на пЕтоне. Поинтересовался у препода, зачем Дата Инженеру ООП. Он мне начал рассказывать, что "так правильно", т.к. ООП -- вершина творения.

Отсюда у меня вопрос: у многих ли людей из этого чята аналитический код дошёл до уровня, когда всё собрано в классы и прочее ООП?
Я писал код выгрузки данных из API опросной системы на R6 классах. В итоге пришёл к выводу, что это зло, потому что отлаживать иголку, когда она в яйце, а та в утке, крайне неудобно. Каждый раз надо сначала собирать утку на лабораторном столе, надо придумывать так, чтобы утка могла жить пустой, так что в ней есть только одно яйцо и одна иголка, а не полная вселенная уток и иголок.
источник

AS

Alexander Semenov in R (язык программирования)
Ну вот да. Я просто очень biased, т.к. код в прод никогда не писал и то, что наблюдал 2,5 года в бигдате МТС иначе как костылями назвать не могу, поэтому рассказы о том, что "надо делать правильно и всё будет правильно" воспринимаю очень скептически. Впрочем, возможно это из-за того, что мне не особо повезло по жизни =)
источник

AS

Alexander Semenov in R (язык программирования)
Откуда у людей время на классы, когда каждая хотелка приходит со сроком "вчера" и курс меняется чуть ли не каждый день, я понять не могу.
источник

ЕТ

Евгений Томилов... in R (язык программирования)
Alexander Semenov
Откуда у людей время на классы, когда каждая хотелка приходит со сроком "вчера" и курс меняется чуть ли не каждый день, я понять не могу.
++++++
источник

VV

Vladimir Volokhonsky in R (язык программирования)
Коллега тут ещё более интересную инфраструктуру построил. Он код обработки данных в проекте оборачивал в пакеты. Типа потом подгружаешь пакет с локального крана и у тебя сразу готовые данные этого проекта очищенные. Удобно, когда оно работает, но поддержание инфраструктуры отнимает кучу сил и времени. Пакрат вообще мне мозг выел полностью.
источник

АК

Артём Клевцов... in R (язык программирования)
Vladimir Volokhonsky
Коллега тут ещё более интересную инфраструктуру построил. Он код обработки данных в проекте оборачивал в пакеты. Типа потом подгружаешь пакет с локального крана и у тебя сразу готовые данные этого проекта очищенные. Удобно, когда оно работает, но поддержание инфраструктуры отнимает кучу сил и времени. Пакрат вообще мне мозг выел полностью.
А в чём сложность поддержки? Вместо пакрат уже давно рекомендуется renv.
источник

VV

Vladimir Volokhonsky in R (язык программирования)
Ну, поскольку пакет устанавливается на локальный кран, то надо чтобы каждый раз как команда переходит на следующую версию R, все эти пакеты пересобирались под эту новую версию и укладывались туда. Кто-то должен одновременно понимать, что там за пакеты, уметь работать с докером, который это всё собирает и проверяет, разбирать ошибки...
источник

АК

Артём Клевцов... in R (язык программирования)
Vladimir Volokhonsky
Ну, поскольку пакет устанавливается на локальный кран, то надо чтобы каждый раз как команда переходит на следующую версию R, все эти пакеты пересобирались под эту новую версию и укладывались туда. Кто-то должен одновременно понимать, что там за пакеты, уметь работать с докером, который это всё собирает и проверяет, разбирать ошибки...
Зачем пакеты должны пересобираться под новую версию R? Они компилятся и линкуются с R-либой?
источник

VV

Vladimir Volokhonsky in R (язык программирования)
Нет, они лежат в папочке с именем этой версии R. Иногда какие-то зависимости могут требовать что-то ещё обновить.
источник

VV

Vladimir Volokhonsky in R (язык программирования)
Ну то есть когда ты делаешь install.packages("survey1087"), то оно ищет в кране R 3.4.1, а там лежит только 3.3.4, например.
источник