Рас Кокс (Russ Cox) объявил об уходе с поста лидера проекта по разработке языка программирования Go, который он занимал последние 12 лет. В качестве причины ухода упоминается желание обеспечить сменяемость руководства, без которого проект может оказаться в застое. Предполагается, что смена лидера создаст условия для роста проекта, позволит по новому взглянуть на вещи и даст возможность совершить новый шаг вперёд...Подробнее: https://www.opennet.dev/opennews/art.shtml?num=61648
Нигде не написано что это он сам принял решенип. Скорее всего какой-то шишке в гугле показалось что пора менять и поменяли.
Пользуйтесь и дальше корпоративными язычками. Я ненароком напомню, что самые драконовские собесы как раз на Java и Go.
> Нигде не написано что это он сам принял решенип. Скорее всего какой-то шишке в гугле показалось что пора менять и поменяли.И? Что ты хотел сказать?
Не доходит?> качестве причины ухода упоминается желание обеспечить сменяемость руководства
Это не он хочет обеспечить. А ему партия сказала пойди и обеспечь. Так понятнее?
> Это не он хочет обеспечить. А ему партия сказала пойди и обеспечь.Ну так и что с того? Что именно мне должно дойти?
Чтобы *тебе* дошло, я перефразирую вопрос: какая разница, принял ли он это решение сам, или его поросило руководство? Поэтому повторюсь: что ты хотел сказать-то?
Что его слова расходятся с реальностью? Нет тебя такое не смущает? Почему бы ему сразу не сказать меня выгнали?
> Что его слова расходятся с реальностью?Без доказательств это пока что это не реальность, а домыслы опеннетного комментатора.
> Нет тебя такое не смущает? Почему бы ему сразу не сказать меня выгнали?
А почему это должно меня смущать? Суть новости в том, что один человек заменился другим. Это обычная практика в любых организациях.
Да причем тут ты? Это нормальных людей должно смущать.
> Да причем тут ты?Вопрос был мне.
> Это нормальных людей должно смущать.
Раз ты нормальный, объяснишь, почему?
> В качестве причины ухода упоминается желание обеспечить сменяемость руководства,
> без которого проект может оказаться в застое
> Предполагается, что смена лидера создаст условия для роста проекта,
> позволит по-новому взглянуть на вещи
> и даст возможность совершить новый шаг вперёдТак прямым текстом сказано, что проект в застое из которого не может выйти и пора делать хоть что-то
Ну а кто кого выгнал - это уже вопрос второстепенный по сути
>> проект может оказаться в застое
> Так прямым текстом сказано, что проект в застоеНаписано "может оказаться в застое", ты говоришь "уже в застое". Объясни, как работает эта логика?
> Написано "может оказаться в застое", ты говоришь "уже в застое". Объясни, как
> работает эта логика?Когда высокое публичное лицо официально говорит что вот-вот "что-то может произойти нехорошее" - значит это уже происходит в той или иной мере настолько, что даже на самом верху это поняли и вопрос лишь в том, насколько далеко это зайдёт и насколько серьёзные и срочные меры надо принимать для снижения ущерба. Но пока изо всех сил делают вид что всё хорошо, до выработки новой общей позиции
> Так прямым текстом сказано, что проект в застое из которого не может выйти и пора делать хоть что-тоВ каком застое? Язык работает нормально, что еще нужно? Ах да, не скучные обои и двигать кровати.
>Это не он хочет обеспечить. А ему партия сказала пойди и обеспечь. Так понятнее?Нет, он сам ушёл. Ты свои бюдло-реалии не перености на чужой тебе мир.
В целом, понятно разочарование в проекте. Можно ли как-то универсально линковать программы на го динамически? Они ещё больше программ на расте памяти потребляют и каждая запущенная копия не делит память с соседними, даже если это одна и та же программа.
> В целом, понятно разочарование в проектеГде в новости упомянуто разлчарование в проекте?
> Они ещё больше программ на расте памяти потребляют и каждая запущенная копия не делит память с соседними
Что правда? На сколько сотен мегабайт больше, чтобы это было проблемой в интерпрайзе?
Так бы он и ушёл, даже если бы гнали вцепился зубами в кресло. Вот в разочарование легко поверить, это чисто корпоративный вендорлок, а не язык.Я вот запустил в порядке теста альтернативный компонент на го, запускается порядка сотни процессов, каждая копия под сотню мегабайт. Вернул питон, 10мб RSS + 6мб shared.
Так не запускайте сотню процессов, горутины для кого придумали?
> Так не запускайте сотню процессов, горутины для кого придумали?А это, кстати, не всегда оптимально. Так грохнется 1 воркер, а так все. Когда все независимы, у этого есть определённые преимущества.
Не приемущества, а оверхеды.
Изоляция и контроль на уровне ОС лучше и проще, чем на уровне рантайма.
Erlang машет ручкой
> Erlang машет ручкойА го?
Ну хз. На том же жс всё оборачивается в разные подобия трай-кетч и плевать что где грохнулось - остальное всё равно работает если само не решит завершаться
>Так не запускайте сотню процессов, горутины для кого придумали?Сделайте запрос в поисковик "утечки go рутинов" и "утечки памяти в go" и удивитесь насколько это распространённые проблемы.
> Так не запускайте сотню процессов, горутины для кого придумали?Перезагрузка кода воркеров без остановки сервиса это важное условие. Я посовещался с чатгпт, и он утверждает, что микросервисы в го не сильно отличаются от того, что я имею сейчас. Это фактически куча процессов и, похоже, невозможно перезагрузить только ожидающие воркеры, оставив занятые в покое (прерывание активной фазы означает повреждение и невосстановимую потерю данных), как в эрланге, и проблема с перерасходом памяти остаётся.
А производительность как у этих двух соотносится? В rps например.
Пока производительность решения на питоне выше, лучше обработка ошибок. Запуск быстрее, функциональность чуть меньше (но она никогда не требовалась). И это при том, что код весьма неоптимальный.
В хеллоуворлдах всегда так. Потому питон и тащит.
Согласен, но вопросы к обработке ошибок в го всё же останутся. Если это корпоративный уровень 1 приложение на всю ноду, тут го может и жизнеспособен. А вот так, выставлять параметры и запускать кучу параллельных инстансов, довольно неэффективно выходит.
Насколько я помню, в пару с мака-кописанием на Го, было принято внедрять на них различные микросервисы,
которые "пучок за пятачок", как для запуска при повышении нагрузки, так и для их массового убиения, при снижении оной.
> Так бы он и ушёл, даже если бы гнали вцепился зубами в кресло.Ты хоть один пруф своим утверждениям о его мотивах приведешь? Или будешь продолжать проецировать на него свои домыслы о языке (которые на уровне "слышал звон").
> Вот в разочарование легко поверить
Ага, работал над проектом 12 лет в роли техлида, получал деньги, а потом вдруг взял и разочаровался, потому что внезапно обнаружил, что "нельзя линоквать программы динамически".
Да, очень легко поверить...
Это ты сам выдумал уже, конечно. Разочароваться можно, потому что это корпоративное болото, и разработкой чисто корпоративного языка без будущего 12 лет руководить не полезно для здоровья, хорошо ещё денег на лечение заработал и не вскрылся вместо ухода с должности.
> чисто корпоративного языкаЧто значит "чисто корпоративный язык"?
Поитересуйся, кто курирует разработку и выделяет на нее деньги и работников для тех же C, C++ и Python.
> без будущего
Алё, Go в проде используется уже больше десяти лет.
Это значит, что ты ходишь в рабах у гугла. Язык был разработан не с целью попробовать сделать новый язык получше, а с целью сделать язык гугла, решающий достаточно нишевые задачи гугла. Но зато документация на неплохом уровне и легко обучать новые кадры, да.
> Это значит, что ты ходишь в рабах у гугла.Ох, лол, да у на тут "не раб". Скажи, свободный человек, на каком языке ты бесплатно пишешь свои хэллоуворлды?
На всех популярных и ещё на расте иногда (правда в итоге приходилось переписывать на плюсы), иногда elixir/otp. А что?
> На всех популярных и ещё на расте иногда [...] А что?А то, что все популярные языки поддерживаются и развиваются корпорациями, поэтому твой пассаж про "ты раб гугла" крайне нелеп.
Только прочие корпорации не торопятся помещать ничего в тески гулага, наверное, тоже ничего не смыслят.
> Язык был разработан не с целью попробовать сделать новый язык получшеИменно с этой целью он и был сделан: чтобы люди занимались решением задач, а не сношались вместо этого с убогим инструментарием и синтаксисом
технологий из начала девяностых (привет, C++).> решающий достаточно нишевые задачи гугла.
Но почему-то используют его не только в Гугле, а и во всем мире в разных проектах. Как же так вышло?
Чего только не используют. В раст вон тоже куча "стартапов" вляпалась. Но когда начнают пихать го в телефоны, фоторамки, рабочие станции наконец, есть тут что-то довольно нездоровое.
> Чего только не используют.Ну, то есть, аргументации у знатного критика Go больше нет, я правильно понял?
Ты же осознаёшь, что куча проектов существует только и исключительно из-за того, гугл топит за го? Теперь остановись на минутку и осознай, сколько некачественного опенсорса нагенерировали студентики.
>Это ты сам выдумал уже, конечноВот это лол, выдумал про разочарование, а потом обвиняет других что они выдумывают. Ахахахаха. Мощно мужик!
>Я вот запустил в порядке теста альтернативный компонент на го, запускается порядка сотни >процессов, каждая копия под сотню мегабайт. Вернул питон, 10мб RSS + 6мб shared.Вот и наступил момент, когда с питоном начали сравнивать в плане потребления памяти :
Ждем когда с питоном начнут сравнивать скорость новых языков :)
> Вот и наступил момент, когда с питоном начали сравнивать в плане потребления памятиТут на Опеннете в комментариях и не о такой дичи прочитаешь...
4мб против 100мб при том, что ничего нового (или хотя бы лучше и быстрее) не делает, это заметно так-то.
Только ни кто не запускает «сотни» процессов на практике. Go-оные программы, знаете ли, обычно не падают. Потому запускают «тысячи» горутин в одном процессе.И да, panic обычно recover на верхнем уровне либо обработчика запроса, либо шедулера джобворкера. Так что, ронять весь процесс из-за одной таски не нужно.
Безусловно, не в любом приложении перехват паники всегда корректен. Но он может быть не корректен (и не делается) только в случае большого постоянного состояния (state). В таком случае и на Python не будет запуска множества процессов.
Так что, простите, но вы сравниваете тёплое с мягким: пытаетесь перенести свои привычки из одной технологии в другую, где они не применимы, и пытаетесь обвинить этим технологию.
Вместо этого, нужно приспособиться к технологии и использовать её сильные стороны.
А горутины масштабируются горизонтально?
Ещё как
>Ждем когда с питоном начнут сравнивать скорость новых языков :)Почему смеётесь? Python становится всё быстрее и быстрее:
https://www.opennet.dev/opennews/art.shtml?num=60966"Предложенный JIT примечателен очень высокой скоростью генерации кода, простотой сопровождения и полной интеграцией с интерпретатором. ... При сравнении с традиционным JIT-инструментарием от проекта LLVM, добавленный в CPython JIT обеспечивает в 100 раз более быструю генерацию кода и на 15% более быстрый результирующий код."
> "Предложенный JIT примечателен очень высокой скоростью генерации кода...Судя по всему или в школах перестали преподавать, что такое JIT vs AоT компиляция или комментатор еще не дошел то того курса. Го он АоТ
Openwrt тебе шутка чтоли?
А что же это за флаги такие у 'go build' - buildmode, linkshared, compiler?...
А я почём знаю? У меня только блобы.
> А я почём знаю?Накой ты тогда с умным видом рассуждаешь о языке?
> Накой ты тогда с умным видом рассуждаешь о языке?Где я рассуждал? Я как раз и спросил, можно ли с этим что-то сделать. Универсально. Ну вот я пишу go install и у меня всё собрано динамически и вся тысяча зависимостей размазывается по копиям. Что, нет?
> Можно ли как-то универсально линковать программы на го динамически?И вляпаться в зависимость от либц ?
> каждая запущенная копия не делит память с соседними
не хаватает денег на память... печаль...
Я не знаю, кем надо быть, чтобы отсыпать в 20 раз больше памяти на пустом месте. Наверное, очень эффективным интегратором. Я тут ещё подумываю переписать на си, тогда вообще память только под буферы и шаримые либы понадобится, проблемность отладки единиц из сотен-тысяч сишных воркеров пока останавливает.
> Я тут ещё подумываю переписать на си, тогда вообще память только под буферы иИз которых так удобно выходить в чужую память и портить ее)
> шаримые либы понадобится, проблемность отладки единиц из сотен-тысяч сишных воркеров пока останавливает.
И будет останавливать.
СИшники не могут написать простейший код без vemory corrupt, а ты "сотен-тысяч" воркеров хочешь запустить.
Как говориться "удачного дебага"))
> Я не знаю, кем надо быть, чтобы отсыпать в 20 раз больше памяти на пустом месте.Ну, видимо, тобой. Иначе как у тебя получилось, что программа на Go жрет в 20 раз памяти больше аналогичной питоньей? Ты сам-то как это объясняешь?
Извини, но ты либо некомпетентен, либо просто лжешь.
Хаха, ты так говоришь, будто привет мир на расте не выглядит так https://github.com/mTvare6/hello-world.rsПодобное очень легко получается, непонятно, зачем ты пытаешься отрицать очевидное. Такой опыт у меня буквально со всеми программами на го, которые я использовал (прошлые версии часто на каком-нибудь си или питоне, разница разительна), поэтому есть подозрение, что лжёшь ты (неясно только, с какой целью).
> Хаха, ты так говоришь, будто привет мир на растеЯ за раст вообще ничего не говорил. К чему ты его упомянул?
> не выглядит так https://github.com/mTvare6/hello-world.rs
Ты сейчас на серьезных щах приводиш в пример шуточный проект? Или ты по-английски читать не умеешь?
Господи, и он еще будет рассказывать, что пишет на Расте...
> Подобное очень легко получается, непонятно, зачем ты пытаешься отрицать очевидное
Ну так ты наконец расскажешь, как у тебя это "очень легко получается", или продолжишь извиваться на сковороде?
Ты правда не понимаешь?
Ну ушел и ушел.
Даже если все покатится, то текущего состояния го хватит ещё на десяток лет чтоб мазюкать в проде и обеспечить себе job safety.
Вы не понимаете что такое job safety.
Job safety это когда вас невозможно уволить, потому что нельзя найти никого кто смог бы разобраться в вашем коде на APL.
С golang ситуация обратная, гошников толпы, архитектура практически одна и та же у всех, взаимозаменяемость превзошла уже кажется Джаву.
Разрабатывать golang и разрабатывать с помощью golang - две разные толпы. Хор первой толпы очевидно меньше второй.
Нет, это ты не понимаешь что значит по-настоящему намазюкать и почему это job safety.
Ну или работаешь в непыльном проекте, что тоже в какой-то степени уважаемо... наверное.
Рас Кокс все правильно сделал. Гному таких начальников не хватает, набирают каких-то белоснежек...
Гугл молодец прогоняет пожизенных диктаторов на раз, два.
Чо за бред?
Пишу на Go, ущел с PHP. Ща думаю вкатиться в Rust. Как думаете, стоит?
Таков путь. Сначала откуда-то приходят в Go, следующая ступень - Rust.
> Сначала откуда-то приходят в Go, следующая ступень - Rust.А конечная ступень какая?
Ниже опуститься пока нельзя
А если постучать?
Катись работы все равно на расте не найдешь. А на го только и успевай от рекрутеров отбиваться которым поговорить.
Катись с прицелом набудущее. Знать Go и Rust лучше, чем знать просто Go. Да, сейчас работы на Rust мало, но постепенно вакансий становится больше. Как выучишь и набьёшь опыта - глядишь - и рыночек появится.
Поехавшаю крышу или выгорание вот что ты получишь. Но ты ещё молодой у тебя все впереди.
Rust не для человеческой психики, на нём если только нейросети в будущем программы писать будут.
Программирование вообще не для человеской психики. Мы в норме свой интеллект должны для охоты на всякую живность использовать.
Ты когда последний раз с дивана вставал, охотничек?
Мое невставание с дивана как-то изменит человеческую природу? Ретроактивно приведет к появлению кодящего пещерного человека?
Всегда можно делать что-то на Rust, если нет требований делать на чём-то другом ;)
Зачем?
> Зачем?Чтобы повысить спрос на Rust!
я обычно делаю на perl, и да, "чтобы повысить спрос" ))))))))))))))
повысить спрос на JavaScript :))
>С первого сентября за техническую часть разработки будет отвечать Остин Клементс
>they/themясно. Жаль, неплохой был язык
оно и так пилило компилятор. Ничего не поменялось, продолжай пользовать.
Это где про местоимения ты увидел?
в профиле на гитхабе
По ссылке https://github.com/aclements что-то не видно. Или где там профиль смотреть?
Надо с включенными глазами смотреть.
После входа в аккаунт это[1] превратится в это[2], добавится <span itemprop="pronouns">they/them</span>.[1] Austin Clements aclements
[2] Austin Clements aclements · they/them
> ясно. Жаль, неплохой был языкЧё, так хочется телеметрии, которую Кокс усиленно проталкивал или эмоджи как раширение Го файла? В этом Кокс приуспел, да... Или так сильно хочется укороченные суппорт в зависимости от платформы ?
Гу не взлетел, даже не смотря на участие таких патриархов IT как Роб Пайк и Кен Томпсон, слишком уж амбициозная была цель - "попытка создать замену языкам Си и C++" - все эти попытки обречены на полный провал, потому что невозвожно революционно взять и создать то, что создавалось многие годы эволюционно.
Слушай да нет просто потребности. В С++ все в целом есть что нужно для счастья.
Ну может только конечно надо stl добить из boost-а все перетащить, но и то я думаю,
что рано или поздно там D или E должен появиться где будет все тоже самое из коробки и без
шаблонов.
> "попытка создать замену языкам Си и C++"Какая замена? Со сборкой мусора? Это замена яп, чтобы быстренько и дешево клепать веб ручки домохозяйкам, уменьшив при этом расходы на железо. С этой задачей более-менее справился, нишу занял.
>чтобы быстренько и дешево клепать веб ручки домохозяйкампоправил: когда на проект с рынка выгребли всех джавистов, можно довольствоваться пыхпыхами и гопниками. безрыбье-ссс
Броадком, после покупки вари, всех твоих жавистов в один день _ВСЕХ_ выставил на мороз ...
У нас тут просто локальный мор был и демпинг, самых высококлассных конечно взяли (за копейки), остальные ушли в доставку пиццы ...Тоже мне - нашёл Ылиту :(
А Го-шники ... все облачные кишки - на Го, тот же кубер и вокруг ... Хотя job security это не гарантирует даже им :( Времена такие(С)
> слишком уж амбициозная была цель - "попытка создать замену языкам Си и C++" - все эти попытки обречены на полный провалЭто от куда такая информация интересная то?
Насколько помню никто не собирался заменять С, а вот Джаву и частично С++, это у них не плохо получилось, учитывая спецификации 50 страниц Го против 1000+ в Яве и С++
И решает Го совсем другие задачи то сравнению с С++
Старо как мир - изпользуй правильный инструмент для каждой работы, вместо забивания гвоздей микроскопом
Все попытки обречены на провал, кроме ржавого, который явно в этом преуспевает
А ещё он безопастно работает с памятью! (С)
Кратко. Разработку Go теперь возглавит небинарная личность Остин Клементс (they/them). Расходимся.
Зато теперь наверно бит в Go сможет принимать не только значения 0 и 1 =)
Погодите расходиться. Где вы у него прочли эти местоимения? На гитхабе https://github.com/aclements не видно. Не тот профиль смотрю?
> Погодите расходиться. Где вы у него прочли эти местоимения? На гитхабе https://github.com/aclements
> не видно. Не тот профиль смотрю?Наверняка не в тот. Мы Анонимы друг-друга не обманываем (с)
Но получилось классно, прям как в анекдоте
- Рабинович! Я всем рассказал, что ваша дочь проститутка.
-- Но помилуйте, у меня нет дочери, только сын!
- А это уже не важно
> Кратко. Разработку Go теперь возглавит небинарная личность Остин Клементс (they/them)Кратко. Для любителей сплетен: nonbinary != they/them
К тому же очень интересно посмотреть исходник этой сплетни
Мы всей подоплёки не знаем, ну устал чел. Можно понять.
"Я устал, я ухожу" Кстати да, причина, что "проект может оказаться в застое" явно надумана, потому что то, что во главе ядра многие годы стоит несменяемый Линус Торвальдс не привело ни к какому застою ядра, так что причина в чём-то другом...
>Рас Кокс (Russ Cox)Особых претензий к нему нет, но вот зря он хочет запихнуть в go зонд https://github.com/golang/go/discussions/58409
И про идею добавить эмоджи как раширение го файлов не забудьте, а также категорические палки в колеса сопровождать старые операционые системы
https://github.com/golang/go/issues/59968#issuecomment-15362...> Retracting. This was fun but not a serious proposal. 😄
> My apologies to those who were concerned we would actually introduce this kind of unnecessary ambiguity, complexity, and churn. 💩[...]
Вот зря, что не мы с вами го развиваем.
Кто мешает? Сейчас вон там отшелушившееся от Borland продолжают развивать.
Более того кто-то там подхватывает в гос секторе. Так что погодите какой-нибудь
СберДевайсес подхватит. Другое дело, что там все надо переделывать в этом вашем Го,
а если начать то получситься Rust =)
Переходит в MS?
> Рас Кокс (Russ Cox) объявил об уходе с поста лидера проекта по разработке языка программирования Go, который он занимал последние 12 лет. В качестве причины ухода упоминается желание обеспечить сменяемость руководства, без которого проект может оказаться в застое. Предполагается, что смена лидера создаст условия для роста проекта, позволит по-новому взглянуть на вещи и даст возможность совершить новый шаг вперёд.if err := DoSomething12Years(); err != nil {
log.Fatal("Я устал, я ухожу")
}
Мавр сделал своё дело, мавр может уходить.
Всё просто: Гугль переводит свои сервисы на Rust, поэтому Go больше не нужен.
Никакое "руководство" не изменит того, что никчемушный, "пустой" язык не имеет никакой популярности.
Да понятное дело непопулярный!
А облака в которых на нём практически всё - это просто капиталистическая пропаганда! :)
Go все 12 лет в застое, вовремя это он спохватился.
Плчему Рас, а не Расс?
Потому-что транскрибируестся как Рас. Слово address мы ведь не транскрибировали как аддресс.
Наконец понял, что Python намного лучше :)