Size: a a a

2020 April 29

RU

Roman Usherenko in Rubyata
Mikhail Sytchev
тогда да, я имел ввиду не версии пакетов, а бандл — как весь пакет приложения
просто обсуждение началось с того что какой-то мелкий пакет поломал всем сборки. и был вопрос почему так происходит
источник

MS

Mikhail Sytchev in Rubyata
да Калыс задал 2 вопроса
источник

RS

Rustam Sharshenov in Rubyata
@dreyks а расскажи, чому фронтендеры так бомбят от coffeescript (когда он был еще живой)?
источник

RU

Roman Usherenko in Rubyata
Rustam Sharshenov
@dreyks а расскажи, чому фронтендеры так бомбят от coffeescript (когда он был еще живой)?
расскажу с удовольствием :)

кофескрипт придуман рубистами чтоб было удобно

я считаю, что для своего времени это было офигенное решение

но потом вышел ES6 и кофе стал вначале неактуальным, а потом вокруг js выросла экосистема, а вокруг кофе - нет
источник

RU

Roman Usherenko in Rubyata
но бомбило в основном именно потому что "ааа рубисты лезут"
источник

RU

Roman Usherenko in Rubyata
ну и лично мое мнение - создатели кофе переборщили - нужно было оставить end, а не делать значимые отступы
источник

RS

Rustam Sharshenov in Rubyata
да, кстати, это был косяк
источник

С

СчАсТлИвАя НО НЕ ТВО... in Rubyata
Roman Usherenko
у js есть одна "фатальная" архитектурная проблема: обращение к ключам объектов через точку
Вот тут объясни, плиз, как это влияет? Я в жс не умею, не знаю что там через точку, но очень интересно как решения дизайнера языка так сильно влияют на его будущее
источник

RU

Roman Usherenko in Rubyata
Rustam Sharshenov
да, кстати, это был косяк
я это ещё с питона не люблю:)
источник

RS

Rustam Sharshenov in Rubyata
После офигительно вкусного синтаксиса руби и чистого вида кода мне каждый раз больно что-то делать на js. Когда coffeescript был еще актуален, это было для меня отдушиной, а теперь стараюсь как можно больше оставаться в рамках rails_ujs и пока получается жить, но такими темпами, возможно, вообще в исключительный бекенд спрячусь. эх
источник

RU

Roman Usherenko in Rubyata
СчАсТлИвАя НО НЕ ТВОЯ ❤️❤️❤️
Вот тут объясни, плиз, как это влияет? Я в жс не умею, не знаю что там через точку, но очень интересно как решения дизайнера языка так сильно влияют на его будущее
я отвечу, но позже, много писать с телефона неудобно
источник

RU

Roman Usherenko in Rubyata
Rustam Sharshenov
После офигительно вкусного синтаксиса руби и чистого вида кода мне каждый раз больно что-то делать на js. Когда coffeescript был еще актуален, это было для меня отдушиной, а теперь стараюсь как можно больше оставаться в рамках rails_ujs и пока получается жить, но такими темпами, возможно, вообще в исключительный бекенд спрячусь. эх
мне сейчас руби неудобно писать без явных импортов
источник

С

СчАсТлИвАя НО НЕ ТВО... in Rubyata
Roman Usherenko
я отвечу, но позже, много писать с телефона неудобно
👍 спасибо заранее
источник

RS

Rustam Sharshenov in Rubyata
Roman Usherenko
мне сейчас руби неудобно писать без явных импортов
туше)
источник

DM

Daniel Manasov in Rubyata
Mikhail Sytchev
ни у кого не видел чтобы бандл разбивался по DI компонентам
Странно, tree shaking и деление на чанки частое явление
источник

MS

Mikhail Sytchev in Rubyata
именно по Dependency Injection?
источник

DM

Daniel Manasov in Rubyata
Mikhail Sytchev
именно по Dependency Injection?
Да, в ангуляре это встроенная фича, в остальных через костыли и не так распространено
источник

RU

Roman Usherenko in Rubyata
СчАсТлИвАя НО НЕ ТВОЯ ❤️❤️❤️
Вот тут объясни, плиз, как это влияет? Я в жс не умею, не знаю что там через точку, но очень интересно как решения дизайнера языка так сильно влияют на его будущее
знач так. у массивов в js есть много полезных функций, которые вызываются на самих массивах типа someArray.forEach, someArray.map итд. у строк например тоже так же myStrimg.includes и все такое
у объектов же нотация через точку идентична получению ключа, то есть myObject.something === myObject['something']
поэтому когда возникла необходимость добавить полезных функций в объект, пришлось делать их статическим, например Object.keys(myObject)

это ведёт к тому, что родными методами js очень неудобно чейнить преобразования данных, если в деле участвуют объекты
Object.fromEntries(
 Object.entries(myObject)
   .map(([key, value]) => [key, value.toLowerCase()])
 )
)

это вот аналог obj.transform_values(&:downcase) в руби

но самое ужасное, что если написать в js свой transformValues, вызывать его придется как Object.transformValues(myObj)

можно конечно упороться по FP и использовать функциональные  библиотеки, полностью отказавшись от стандартной библиотеки даже для массивов

compose(
 filter((v) => v > 0),
 map((v) => v + 2),
 [-5, -4, -3, -2, -1,  0]
) // на выходе получаем [1, 2]

и это будет работать одинаково круто для массивов, объектов и всего остального, но это не для всех

а вот если бы изначально не закладывались на то что можно ключи через точку брать - было бы все гораздо проще
источник
2020 April 30

RS

Rustam Sharshenov in Rubyata
https://youtu.be/F5hA79vKE_E

Эти CableReady и StimulusReflex, похоже, годные штуки
источник

М

Майкл не Джордан... in Rubyata
всем привет, сегодня можно вакансию постить?
источник