Dmitry
first make it work, then make it right, and, finally, make it fast. https://wiki.c2.com/?MakeItWork
Vladislav
first make it work, then make it right, and, finally, make it fast. https://wiki.c2.com/?MakeItWork
🧐 в принципе, если код работает, и деньги уплачены, то можно остановится на первом пункте
Сидредин
Dmitry
🧐 в принципе, если код работает, и деньги уплачены, то можно остановится на первом пункте
Make it work - это про то, что код скомпилился. Обычно останавливаются на make it right
Vladislav
А для этого надо самому стать безумцем?)
Нет, просто паяльник взять и поймать этого писателя в подворотне
K
Херово написанная программа вполне может быть успешной при отсутствии альтернатив в классе.
K
Нет, просто паяльник взять и поймать этого писателя в подворотне
Что он тебе сделал? Перепиши если не нравится, или создай альтернативы
Vladislav
Что он тебе сделал? Перепиши если не нравится, или создай альтернативы
Не всегда переписать проект так легко, особенно если он изначально хер пойми как написан
Vladislav
Я полгода трахался с переписыванием казалось бы небольшого сервиса полнотекстового поиска. Там концов не сыщешь
K
Так а херли ты быкуешь на чужую код?
Vladislav
Так а херли ты быкуешь на чужую код?
Может потому что люди код писать не умеют? 😁
K
Так и ты не умеешь, если, цитата: "полгода трахался переписыванием казалось бы небольшого сервиса полнотекстового поиска" Как говорится в своем глазу бревна не замечаешь
K
На словах то каждый граф.
Андрей
Igor
Я полгода трахался с переписыванием казалось бы небольшого сервиса полнотекстового поиска. Там концов не сыщешь
А в чем цель переписывания была? Чтобы clear code или не осилили допиливание существующего кода?
K
Если работает, купят контору, пригонят галеру и перепишут
Это было когда ставка кредита была %0. Сейчас деньги дорогие. Включился режим экономии. Увольнения уже пошли
Vladislav
А в чем цель переписывания была? Чтобы clear code или не осилили допиливание существующего кода?
Проект был написан изначально на php. Было много проблем с производительностью (но это не проблема php, а проблема ORM, и либы для работы с elastic) Код был написан так, что разобраться в нем было крайне не просто, а соответственно сопровождать и добавлять новые фичи тоже
Vladislav
Чтобы все исправить, мне не хватало компетенций в php
Igor
Чтобы все исправить, мне не хватало компетенций в php
Как нехватка компетенций связана с качеством приписываемого кода?
Vladislav
Как нехватка компетенций связана с качеством приписываемого кода?
Никак. Нехватка компетенций влияла на сложность устранить проблемы в текущем проекте
Igor
Это сам поиск
А при чём тут тогда либа для Эластика? Как-то странно звучит
Vladislav
Как по твоему устроен сервис полнотекстового поиска?
Vladislav
У меня такое чувство что мы не понимаем друг друга
Igor
Как по твоему устроен сервис полнотекстового поиска?
Есть три варианта 1 он работает с внешним провайдером типа сфинкса или эластика через API 2 движок встраивается в код. Для го это что-то типа believe, для JVM - люсин 3 движок пишем сами. Два первых варианта я делал сам, третий нет ибо это сомнительная идея
Sergey
У меня такое чувство что мы не понимаем друг друга
Даже не пытайся. У других всегда сервис написать можно «минут за 15, херли там писать» и «да что там в вашей инфраструктуре копаться, я левой ногой за 20 минут делаю», а сам смотришь как команды из нескольких человек месяцами мудохаются…
Vladislav
Есть три варианта 1 он работает с внешним провайдером типа сфинкса или эластика через API 2 движок встраивается в код. Для го это что-то типа believe, для JVM - люсин 3 движок пишем сами. Два первых варианта я делал сам, третий нет ибо это сомнительная идея
Поисковый движок работает с внешним провайдером, но содержит в себе большое количество логики (анализаторы) задача которых определить к какой характеристике относится искомое слово в фразе, составление фильтров, поиск по этим фильтрам, исключение лишних критериев, определение кофликтующих критериев и т.п.
Igor
Но задача эта может быть очень тяжёлой, спору нет
Aleks
Вот интересно просто, чистая архитектура снижает техдолг в перспективе. Принципы ООП тоже снижают техдолг в перспективе разработки. А если использовать и это и то, тех долг станет отрицательный? Или у когото ума таки добавится?
Андрей
Весь долг там, где нет спецификаций и тестов
Igor
Что касается ООП, то в го с ним реально хреново. Инкапсуляция костыльная, принцип подстановки Лисковой не работает на уровне типов и тд
Aleks
Весь долг там, где нет спецификаций и тестов
Скорее где требования бизнеса по фичам очень динамично меняющиеся. И всегда сильное ограничение по времени (на рефакторинг под новые вводные). Тесты кстати тоже отбирают время.
Aleks
Что касается ООП, то в го с ним реально хреново. Инкапсуляция костыльная, принцип подстановки Лисковой не работает на уровне типов и тд
В какомто смысле с ООП везде хреново. Рич домен модел не все фреймворки даже совсем ООПшных языков дадут использовать. Там где бизнеслогика вне классов.
Aleks
Или нормально все с ООП и т.п. в Go, и архитектура выбирается из задачь а не из за чистоты?
Андрей
Она из юзкейса и идёт по классике. У жилого дома одна, у больницы другая, у кинотеатра третья
Aleks
Она из юзкейса и идёт по классике. У жилого дома одна, у больницы другая, у кинотеатра третья
Это хорошо если так, а то часто встречаются паттерны ради паттернов и hello world на чистой архитектуре. :)
Andrew
Привет ребят, как сейчас со спросом на рынке на гошников? Как обычно, у мидлов/помидоров все спокойно, а джунам туговато? Спасибо!👍🏻
Andrew
А можешь чуть подробнее пожалуйста, причину имею ввиду
Andrew
причина достаточно очевидная)
Массовые увольнения?
Sula
Массовые увольнения?
проблема более глобальная
Andrew
Возможный кризис?
Sula
Ну почему сейчас много компаний в России закрылись)
Sula
Я имею ввиду в целом в мире
Я это тоже имею ввиду
Andrew
Понял
Andrew
Я сам фронт и мне почему-то всегда казалось что бэк и системное менее подверженны эконом и полит факторам
Владимир
Я сам фронт и мне почему-то всегда казалось что бэк и системное менее подверженны эконом и полит факторам
Чойта. Если нет лишних денег вкладывать в мегакриптостартап, то и зарплат не будет ни у беков ни у фронтов
Andrew
Чойта. Если нет лишних денег вкладывать в мегакриптостартап, то и зарплат не будет ни у беков ни у фронтов
Тут правда Ну тут скорее мысль про то что бэк шире и более гибкий Образно говоря бэк может прожить с любым фронтом, хоть попиксельным, но фронт с плохим бэком не нужен
Andrew
Чтобы понятно было) мысль пошла с того что я сам iOS разработчик, но есть понимание, что (теоретически) через 10 лет вместо iPhone будет fooPhone, а бэк не настолько динамичен (или динамичен, но не так критически) Вот и посматриваю на бэк Да и интересно что у вас там происходит)
Andrew
Джаву не хочется Логично и питон взять, но он интерпретируемый, вот и пришел к го
Andrew
Это грустно, думал го прошел стадию масс адопшена (останется с нами)
Герман
Будут тогда другие мейнтейнеры. Слишком много крупных компаний уже использует Go в той или иной степени. Из очевидных около FAANG-кандидатов - Uber
Andrew
Тоже правда видимо
Андрей
После Свифта сложно не должно быть. Но станешь плеваться местами
Dmitry
Я помню тут кто то откликался на вакансии Nebius, собесы уже были? Может кто знает
Dima
Понял, спасибо👍🏻
Golang специально спроектирован максимально простым языком, сделано это для того, чтоб код был легко читаем в командах. Запросы рынка Go разработчиков, это навыки Системного Дизайна в первую очередь.
Dima
Если я правильно понял, это больше про архитекторов и девопсов?
Термины "архитектор" и "девопс" имеют широкое трактование, почти каждый вкладывает в них свой смысл. Golang это язык для разработки в командах, сложных распределенных систем, практические примеры: Docker, K8s.
Dima
Если я правильно понял, это больше про архитекторов и девопсов?
И смысл в том, что для таких систем нужно не просто выучить очередной синтаксис, а разобраться в том как устроены ОС и их сетевые подсистемы.
Dima
Шабашить лучше на JS и PHP, возможно сейчас это Python. Там можно синтаксис выучить, чуть чуть с фреймворком разобраться и зашибать деньгу.
Alik
ребят у меня проблема возникла, я что-то неделю назад поменял в GOROOT и сейчас что не делаю сообщение в cmd "go: cannot find GOROOT directory:" уже голанг переустанавливал дофига раз, скачивал и msi и zip с официального сайта, ничего не помогает. Может кто-нибудь помочь плиз?
Alik
(windows), то же самое
Андрей
А в set что?
Alik
а сет это что
Dima
а сет это что
1. Что пишет в терминале go version. 2. Что пишет go env. 3. В Windows есть вкладка переменные ОС (точно где не скажу), посмотрите там значение GOROOT. 4. Проверьте есть ли у вас такая дирректория как в переменной GOROOT.
Alik
1. go: cannot find GOROOT directory 2. go: cannot find GOROOT directory 3. в GOROOT C:\Program Files\Go (там где и находиться Go) 4. есть
Alik
Alik
Dima
А что если в Системные Переменные добавить?