Roman
в чатах все обсуждения постоянно повторяются просто потому что каждый раз состав участников немного меняется
когда состав участников меняется то я не против, всегда рад побеседовать. но когда одному и тому-же человеку постоянно приходится пояснять что к чему - надоедает и загрязняет историю чата поэтому я призываю в таком случае игнорировать сообщения
Kirill
Всем привет! Приглашаю на митап. 23 сентября, в воскресенье, в московском офисе Mail.Ru Group состоится тематический митап – Go в продакшене. Цель встречи – рассказать и показать на примерах разных компаний, как мигрировать на Go с других языков, почему проекты и компании выбирают Go, какие решают задачи, с чем сталкиваются при переходе, какие получают результаты и т.д. Митап ориентирован на людей, которые не имеют опыта в Go, но очень хотят попробовать и нуждаются во вдохновляющих примерах. Хардкорных кишков го не будет. Программа: — «Миллиард пушей на Go», Дмитрий Швеенков, Mail.Ru Group — «Медиасервер трансляций на GoLang», Михаил Радченко, ВКонтакте — «Два очень разных опыта миграции на Golang. На примере компаний Lazada и Ozon.travel», Юрий Васияров, Ozon.travel — «Переход web-api Почты@Mail.Ru на Go», Василий Романов, Mail.Ru Group — «Pipeline поиска по Почте@Mail.Ru на Go», Виктор Стародуб, Mail.Ru Group — «Опыт перехода Авито.Доставки с Java на Go», Илья Лапин, Avito — «Как мы начали использовать Go в Ответах@mail.ru», Марк Белоцкий, Mail.Ru Group — список пополняется Мероприятие бесплатное, но требуется регистрация https://corp.mail.ru/ru/press/events/510/ Трансляция будет, видео будет. Если вы хотите поделиться своим кейсом, который подходит под тему митапа - на странице регистрации есть ссылка.
для трансляции нужна регистрация? не увидел на странице
Roman
эх, я бы не прочь устроиться
а я бы по возможности нет))) только в худшем случае))
Roman
почему?
своих забот достаточно)
Roman
сотрудником в гугл это конечно круто, но лучше таки начальником в своей конторке
Roman
Обязательно быть начальником?
нет конечно, можно быть и тех. директором
Pavel
всмсл?
В чем смысл быть руководителем? 😆
Roman
В чем смысл быть руководителем? 😆
на этот вопрос каждый отвечает сам. Я, будучи программистом, не мог принимать рациональные решения относительно того какие технологии использовать в том или ином проекте из-за дибильного менеджмента. Поэтому я очень трепетно отношусь к этому вопросу и требую абсолютную автономию в этом плане, что для большинства немецких IT компаний просто неприемлемо. так оно и сложилось, что будучи разработчиком я скорее предпочту сложную жизнь tech founder'а нежели относительно простую жизнь сотрудника.
Pawel
о чём я и грю, не хочу заводить лишние споры, лишь выяснить некоторые детали для завершения написания proposal'а в чём нужно стороннее мнение
почему бы вам тогда не написать ишшуй в https://github.com/golang/go ? Там уровень дискуссии в тех плане явно выше и фидбек более значимый. Зачем из-зо дня в день забивать чятик сообщениями на эту тему?
Илья
начать можно с мотивации, нафига оно нужно, и, если оно действительно нужно, делать пропозал по реализации
Илья
это в issue может быть, и можно уже обсудить, думаете если вы продумали все кейсы mut <-> immut ваша rationale станет сильнее чтоли?
it works
Комрады, всем привет! Есть просьба пройтись незамутненным взглядом по https://bit.ly/gogolang и оценить увиденное. Заявленная цель - быстрое тестирование знания основ языка. Нужен фидбек, как можно больше (поле для фидбека там есть). Ну и какое-никакое развлечение под конец дня... :)
Co.In
Что посоветуете почитать по архитектуре проекта на go? Как научится не страдать с цыклическими импортами? Основные правила так сказать.
l3xxxy
Почитай кнута
Kirill
чем тут кнут поможет - не ясно
Roman
какие линтеры в VSC отвечают за error highlighting в Go коде?
Roman
это в issue может быть, и можно уже обсудить, думаете если вы продумали все кейсы mut <-> immut ваша rationale станет сильнее чтоли?
не стоит напрягать Go team и community недоработанными идеями, у них достаточно хлопот. Лучше сперва убедиться что всё что ты мог - ты продумал сам, уже.
Roman
начать можно с мотивации, нафига оно нужно, и, если оно действительно нужно, делать пропозал по реализации
пропозал по реализации можно будет делать только после пропосала самой концепции. Для начала планируется реализация линтера без поддержки компилятором квалификатора const (но это не долгосрочное решение а скорее PoC)
Savely
Сорри за врыв
Savely
Лень искать ссылку
Savely
Вы тут настрочили пару тысяч сообщений
Roman
Что за пропозал?
https://github.com/romshark/Go-2-Proposal---Immutability
Savely
Какой-то раст
Savely
Roman
Какой-то раст
читайте зачем это нужно. Иначе это эмоцианальное мышление аля "раст сложно = плохо; го легко = хорошо"
Savely
Я ж ещё ничего не сказал
Savely
А почему нельзя подождать Go2? Это ведь не просто новые методы в существующем пакете, а изменение языка, причем достаточно серьезное. Why overload the const keyword instead of introducing a new keyword like immutable etc.?
Andrei 🦉
А почему нельзя подождать Go2? Это ведь не просто новые методы в существующем пакете, а изменение языка, причем достаточно серьезное. Why overload the const keyword instead of introducing a new keyword like immutable etc.?
а когда Go2 будет? а взлетит ли он вообще на фоне допиленного до конфетки раста или вообще языков следующего поколения? а фичи хочется уже сейчас
Savely
Алсо ИМХО иммутабельность по дефолту не нужна.
Savely
В Go2, как предлагается в пропоузале.
Andrei 🦉
Go2 будет. Я думаю через пару лет. Взлетит. Потому что Раст язык немного из другой оперы.
Go2 еще даже не на стадии проектирования, а судя по обсуждаемым фичам, это новый язык, мало связанный с Go первой инкарнации, так что лет 5, не меньше
Savely
Куда уж малосвязанный-то.
Andrei 🦉
Куда уж малосвязанный-то.
одни только дженерики, которые только начали нормально обсуждать кстати, чего стоят
Savely
а вроде наоборот нужна?
Растоманам может и нужна. Там я против неё ничего не имею, безопасность и всё такое. У Го немного другой прицел, ИМХО.
Eugene
Растоманам может и нужна. Там я против неё ничего не имею, безопасность и всё такое. У Го немного другой прицел, ИМХО.
это вроде одна из ключевых фич, которая решает проблемы, связанные с shared mutable state?
Daniel
unintentionally used global shared mutable state
Daniel
если быть точным
Eugene
прямо в документации Rust это написано: ...одновременно у вас может быть только один из двух перечисленных ниже видов заимствования, но не оба сразу: одна или более неизменяемых ссылок (&T) на ресурс; ровно одна изменяемая ссылка (&mut T) на ресурс.
Eugene
http://rurust.github.io/rust_book_ru/src/references-and-borrowing.html#%D0%9F%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D0%B0
Savely
Так или иначе текущий пропозал синтаксически плохо читается, ИМХО. Также как и предложенные контракты. func (rec * const T) OurMethod( s const [] * const Object, ) const [] * const Object { ...
Daniel
критикуя - предлагай
Savely
Мои предложения не совместимы с Go1
Daniel
а критика, стал-быть, совместима?
Savely
алсо насколько много придется переделывать в gc для реализации проползола в текущем виде? (это не риторический, а серьезный вопрос)
Daniel
а при чем тут gc?
Алексей
а GC тот тут причём?
Savely
я про golang compiler
Алексей
такие вещи надо явно писать, иначе коллизия именований будет
Алексей
и переделывать скорее всего всё равно придётся значительно
Savely
и переделывать скорее всего всё равно придётся значительно
Я просто к тому, что при всей крутости предложения его могут отклонить тупо по тому что это нерациональное расходование времени, которое можно направить на проектирование и реализацию Go2, пусть ещё и далекого.
Roman
А почему нельзя подождать Go2? Это ведь не просто новые методы в существующем пакете, а изменение языка, причем достаточно серьезное. Why overload the const keyword instead of introducing a new keyword like immutable etc.?
если почитаешь пропосал поймёшь, что все предложенные изменения ложатся на язык абсолютно просто и без "серьёзных" изменений нарушающих обратную совместимость.
Roman
потому что Go2 будет через несколько лет, если будет, а Роман предлагает в т.ч. неломающую совместимость фичу для 1.*
я предлагаю как неломающий компромис для Go 1.x, так и более лучший подход к иммутабельности в Go 2.x
Savely
ну не настолько значительные же, это не переписывание всего компилятора
Вот поэтому интересно послушать тех, что маломальски знаком с кодом компилятора.
Savely
Я просто не знаком
Алексей
я немного знаком
Алексей
но совсем немного
Roman
а когда Go2 будет? а взлетит ли он вообще на фоне допиленного до конфетки раста или вообще языков следующего поколения? а фичи хочется уже сейчас
не сравнивайте Go с Rust. Это абсолютно разные инструменты для решения абсолютно разных проблем. https://www.quora.com/Will-Go-over-take-Rust-as-the-most-popular-language-compiled-to-WebAssembly/answers/97741098
Алексей
но я к примеру знаю, что там два парсера, один для компилера, другой для go fmt и прочих утилит
Алексей
зачем так сделали мне совершенно не ясно