Size: a a a

Programming Offtop

2021 January 28

VP

Vladimir Petrakovich in Programming Offtop
Konstantin Dovnar
Но без фич ломающих совместимость и не сломается ничего  ¯\_(ツ)_/¯
Вообще-то нет. Не новые фичи ломают совместимость, а вырезание старых.
источник

VP

Vladimir Petrakovich in Programming Offtop
Anton Korotkikh
ну и? так жо в жс многие объекты кресты под капотом, дебажа котоыре ты не увидишь ничего кроме '[native function]'

если вовзращатсья к пробелме глобально
один фиг, по идее можно понять что некоторые куски кода не используются. более того в жс это понять куда сложнее, т.к. из-за динамической природы и eval ты можешь в рантайме сгенерить код, который потгроает какой-то объект в глобальном скопе, который до этого считался неиспользуемым. (аналогично видимо и с жвм, если на лету затягивать классы в стиле 'я у мамы апликейшн сервер')

но есть же случаи куда проще
вот обяъвил я где-то private static yoba и нигде её потрогал, в чём пробелма как минимум её выкинуть?
Да какая разница, что там под капотом. Ты если на C++ что-то пишешь и динамически линкуешь, надо чтобы был стабильный ABI, иначе всё взорвётся при запуске, а после перекомпиляции может работать. А любая портянка на JS будет работать вне зависимости от того, что там под капотом.
источник

VP

Vladimir Petrakovich in Programming Offtop
Anton Korotkikh
ну и? так жо в жс многие объекты кресты под капотом, дебажа котоыре ты не увидишь ничего кроме '[native function]'

если вовзращатсья к пробелме глобально
один фиг, по идее можно понять что некоторые куски кода не используются. более того в жс это понять куда сложнее, т.к. из-за динамической природы и eval ты можешь в рантайме сгенерить код, который потгроает какой-то объект в глобальном скопе, который до этого считался неиспользуемым. (аналогично видимо и с жвм, если на лету затягивать классы в стиле 'я у мамы апликейшн сервер')

но есть же случаи куда проще
вот обяъвил я где-то private static yoba и нигде её потрогал, в чём пробелма как минимум её выкинуть?
Про private: есть рефлексия. И это не задача компилятора пытаться понять, лазишь ты туда через неё или нет.
источник

KD

Konstantin Dovnar in Programming Offtop
Vladimir Petrakovich
Вообще-то нет. Не новые фичи ломают совместимость, а вырезание старых.
Ну. Строить мажорный релиз на вырезании старых фич тоже звучит совсем не очень.
источник

VP

Vladimir Petrakovich in Programming Offtop
Konstantin Dovnar
Ну. Строить мажорный релиз на вырезании старых фич тоже звучит совсем не очень.
Ну вон в Gradle примерно так и есть.
Только там не только вырезание, но и потенциально ломающее изменение поведения.
источник

VP

Vladimir Petrakovich in Programming Offtop
Konstantin Dovnar
Ну. Строить мажорный релиз на вырезании старых фич тоже звучит совсем не очень.
semver, ёпта
источник

KD

Konstantin Dovnar in Programming Offtop
Vladimir Petrakovich
Ну вон в Gradle примерно так и есть.
Только там не только вырезание, но и потенциально ломающее изменение поведения.
Это, знаешь, как политики: "Ну да, я ворую, но вон тот ворует ещё больше, ко мне какие претензии?" :)

Но да ладно. Это явно вкусовщина.
А мой вкус стоится на том, что когда идёт речь о каком-то крупном, мажорном релизе — хочется получить какой-то крупный, мажорный релиз, а не "ну мы обещали выпускать каждые полгода, вот вам. ну да, ничего особо нового нет, поправили баги".
источник

VP

Vladimir Petrakovich in Programming Offtop
Konstantin Dovnar
Это, знаешь, как политики: "Ну да, я ворую, но вон тот ворует ещё больше, ко мне какие претензии?" :)

Но да ладно. Это явно вкусовщина.
А мой вкус стоится на том, что когда идёт речь о каком-то крупном, мажорном релизе — хочется получить какой-то крупный, мажорный релиз, а не "ну мы обещали выпускать каждые полгода, вот вам. ну да, ничего особо нового нет, поправили баги".
У тебя просто другие ожидания от новой мажорной версии, "пользовательские" так сказать.
Конечно, чтобы заманить на новый мажорный релиз, его как правило снабжают вкусными фичами, но не всегда)
источник

KD

Konstantin Dovnar in Programming Offtop
Vladimir Petrakovich
У тебя просто другие ожидания от новой мажорной версии, "пользовательские" так сказать.
Конечно, чтобы заманить на новый мажорный релиз, его как правило снабжают вкусными фичами, но не всегда)
Просто не вижу смысла называть релиз "мажорным", если он таковым и не является. Я не говорю, что конкретно у котлина так, нет, но обязаловка с выпуском раз в полгода явно рано или поздно к такому привести может.

ИМХО, релиз должен строиться не тупо на даты, а в том числе на какие-то реальные изменения внутри.
источник

VP

Vladimir Petrakovich in Programming Offtop
Konstantin Dovnar
Просто не вижу смысла называть релиз "мажорным", если он таковым и не является. Я не говорю, что конкретно у котлина так, нет, но обязаловка с выпуском раз в полгода явно рано или поздно к такому привести может.

ИМХО, релиз должен строиться не тупо на даты, а в том числе на какие-то реальные изменения внутри.
Опыт индустрии показывает, что релизы по расписанию - пушка
источник

VP

Vladimir Petrakovich in Programming Offtop
А релиз конкретных фич может сильно задержаться и потащить за собой всё остальное
источник

BP

Bogdan Panchenko in Programming Offtop
Anton Korotkikh
кстати да, в чём проблема просто взять и обновить платформу? часто слышал, что есть конторы в духе "у нас жаба 1.8". ии? насколько хуёво нужно было спроектировать и реализовать систему, что вы не можете обновлятсья даже на LTS целевой платформы? как это вообще возможно?
Обычно мешают либы. Там с 9ки модули завезли, которые довольно сильно изменили, если без хаков то переросли можно, с ними - сидят на 8ке
источник

KD

Konstantin Dovnar in Programming Offtop
Vladimir Petrakovich
А релиз конкретных фич может сильно задержаться и потащить за собой всё остальное
И в чём проблема? Релизов мажорных и ждут обычно ради фич. Если фича задерживается и мажорный релиз выходит без неё, то какой же это мажорный релиз?
источник

KD

Konstantin Dovnar in Programming Offtop
Т.е., чтобы потеряли пользователи, если бы вместо мажорного без фичи, вышел бы просто очередной релиз, с багфиксами и пр.? К чему эта гонка версий?
источник

AG

Alexander Gorodok in Programming Offtop
Konstantin Dovnar
Т.е., чтобы потеряли пользователи, если бы вместо мажорного без фичи, вышел бы просто очередной релиз, с багфиксами и пр.? К чему эта гонка версий?
"так принято"(цэ)
источник

KD

Konstantin Dovnar in Programming Offtop
Alexander Gorodok
"так принято"(цэ)
¯\_(ツ)_/¯
источник

BP

Bogdan Panchenko in Programming Offtop
Konstantin Dovnar
И в чём проблема? Релизов мажорных и ждут обычно ради фич. Если фича задерживается и мажорный релиз выходит без неё, то какой же это мажорный релиз?
Не ной. Котлин 1.4 прекрасен
источник

Kd

Konstantin dmz9 in Programming Offtop
Andrew Mikhaylov
Russ Cox:

I was once asked about the impact of the research literature on Go's design, and I replied in part:

Go is more an engineering project than a pure research project. Like most engineering, it is fundamentally conservative, using ideas that are proven and well understood and will work well together.

http://www.pl-enthusiast.net/2015/03/25/interview-with-gos-russ-cox-and-sameer-ajmani/
на секунду показалось что этот тот чувак
источник

AM

Andrew Mikhaylov in Programming Offtop
Konstantin Dovnar
И в чём проблема? Релизов мажорных и ждут обычно ради фич. Если фича задерживается и мажорный релиз выходит без неё, то какой же это мажорный релиз?
Обычно фичей делают больше одной. И нередко мелкие не выпускаются из-за того, что крупные недоделаны. Потому многие и делают периодические по времени релизы -- есть тот самый release train, что успели сделать -- то и вылили. Плюс периодические по времени релизы помогают с предсказуемым deprecation cycle.
Очевидно, никто не будет делать релизный цикл для языка программирования в две недели, так как не будет успевать набраться вменяемый набор фичей. с полугодовым, мне кажется, всё как раз ок.
источник

AM

Andrew Mikhaylov in Programming Offtop
Джавке такой подход, как по мне, на пользу пошёл, надеюсь с котлином та же фигня будет.
источник