Emin Zalaev
Вакансию вчера выложили
Emin Zalaev
Emin Zalaev
Эта с 16 августа висит
Emin Zalaev
Мурат
А вот по поводу оценки 2/10 по вакансиям Go. Много материала читал вроде "переходим с *** на Go". Неужели так медленно хомяк набирает популярность? Или легаси пайтонов и джавы придется разгребать годами?
Emin Zalaev
Тоже вчера выложили
Herman
Мб смущает, что это Данила какой-то
Emin Zalaev
это щас
Emin Zalaev
я туда на собес ходил
Emin Zalaev
раньше какая то контора была
Herman
Данила собесил?
Emin Zalaev
Emin Zalaev
Нет
Emin Zalaev
Я вроде рассказывал
Emin Zalaev
Пришел в мск сити
Emin Zalaev
Думал щас на панорамах на 60 этаже
Emin Zalaev
Башня федерация восток и тд
Emin Zalaev
А там 3 этаж без окон
Emin Zalaev
Будто в подвале
Herman
Я бы забил и выбрал что больше нравится
Опираться на другие критерии в рамках мейнстрима мало смысла
Emin Zalaev
Это то ладно, перед этим был тех собес дистанционнно, после него позвали в офис, приехал в офис, дали тестовое сказали садись делай, а да, еще у нас собес в 4 этапа
Emin Zalaev
Ну я просто сьебал оттуда
Herman
Правильно
Herman
Будто заняться больше нечем
Emin Zalaev
так типа я и так работаю
Emin Zalaev
ладно если бы я безработным был думаю жопу порвал
Emin Zalaev
но нахуй надо весь день вьебывать на эту парашу без окон
Emin Zalaev
еще каждый день с 9-18 туда ездить
Мурат
ахах)
Emin Zalaev
ты можешь и 0 зарабатывать и 100к, зависит от везения/знакомых в айти/и твоего упорства
Emin Zalaev
если всего этого нет то 0
Emin Zalaev
если все есть и больше можешь
Мурат
Понял, принял. Пойду переваривать. Спасибо за полезную инфу!)
Мурат
Начал язык изучать по книге Орейли из серии "изучаем Х". Так вот, вопрос. Любой роадмап из гугла пойдет в качестве руководства дальнейшего?
Herman
Лишь бы не тот, где для бекендера сначала фронтенд изучить надо
Emin Zalaev
Emin Zalaev
с картинкой бегаешь по чатам и спрашиваешь что и зачем надо или нет, тебе за все изи пояснят
Herman
Вот почему дальше нету ничего
Emin Zalaev
Вот почему дальше нету ничего
дальше переход на питон
Captain Jack Vielfrass
Лишь бы не тот, где для бекендера сначала фронтенд изучить надо
Ахах. Я тут смотрел вакансии на hh, и в одной nodejs backend в ключевых навыках указали angular😁, хотя в вакансии ничего про это не было. Главное чтобы когда придёшь на работу, не заставили фронты потом пилить.
Emin Zalaev
На жсе бахать
Emin Zalaev
Но я выбрал путь самурая и сдался, делал бэк часть для сервиса
Andrey
ребят привет, кто накинет лучше идею. PG SQL , есть 2 таблички, обе с автоинкрементом в качествет первичного ключа. Нужно записать данные в обе, но так чтобы во вторую табличку записать id(автоинкримент который сгенерился) при записи в первую табличку Можно сделать не используя каких-то своих доп. айдишников которые сам буду генерить ? типа uuid, или md5 итд
Andrey
Тоесть я хочу автоинкримент первой таблички использовать как ключ связи для второй таблички
Урал
Всем привет, подскажите, как в гоу возвращать код ошибки из уровня юзкейс в контроллер? Если у меня предполагается несколько разных ошибок, зависящих от логики в юзкейс. Чтобы потом вернуть этот код клиенту в виде statuscode
Артем
юзкейс ничего не должен знать о статус кодах. Это бизнес уровень. Вкидывай кастомную ошибку. Сделай, например, пакет http_erorrs, туда положи следующее: var ErrDoesNotExist = errors.new("smth does not exist")
Артем
потом в контроллере парси ошибку, для нее подбирай статус код
Артем
пример можно глянуть здесь https://github.com/AleksK1NG/Go-Clean-Architecture-REST-API/blob/master/internal/comments/usecase/usecase.go
Arseniy
Всем привет! Сталкивался кто-нибудь с билдом приложения исползующего CGO? У меня на машине билдится нормально, в билд-образе тоже. Когда пытаюсь запустить в скретче, получаю пикрил ошибку. Из зависимостей только amqp. Если попробовать сбилдить "hello world", то работает окей. Переключение флажков CGO_ENABLED, GOOS и GOARCH результатов тоже не даёт
Arseniy
Евгений
Коллеги, всем привет. А кто-нибудь знает есть ли хороший мигратор (который накатывает миграции и хранит состояние) для elastic?
Pavel
Всем привет! Столкнулся тут с одной проблемкой и хотел обсудить ее с комьюнити. Я люблю тесты, а интеграционные так просто обожаю. Но иногда приходится работать с библиотеками к публичным API каких-либо сервисов, в которых URL до этого API зашит в самой библиотеке. Для примера, возьмем библиотеку к Telegram API (подставь любое другое API) у которой URL зашиты с помощью следующей конструкции: // Telegram constants const ( // APIEndpoint is the endpoint for all API methods, // with formatting for Sprintf. APIEndpoint = "https://api.telegram.org/bot%s/%s" // FileEndpoint is the endpoint for downloading a file from Telegram. FileEndpoint = "https://api.telegram.org/file/bot%s/%s" ) Так вот у меня есть желание замокать HTTP-сервер телеграма и подменить зашитый URL на свой собственный, что бы погонять e2e тесты в локальном окружении, но я не понимаю как это можно сделать. Пока есть следующие соображения: - Не мокать HTTP-сервер, а замокать библиотеку через интерфейсы. Вариант мне не очень нравится, т.к. хотелось бы все же сделать тесты именно интеграционным. - Форкнуть библиотеку и дописать сеттеры на эти URL для целей тестирования. Тоже не очень, т.к. потом разойдется код с родительской либой и это приседание нужно будет повторять при каждом обновлении версии - Создать такое локально окружение, которое будет резолвить api.telegram.org в условный 127.0.0.1, на котором я подниму свой мок (например через /etc/hosts). Пока склоняюсь к этому варианту, но вносить изменения в конфигурацию ОС ради тестов тоже не хотелось бы. Так вот. Существует ли какой-нибудь идиоматический способ решения моей проблемы в Golang?
Sergey
Всем привет! Столкнулся тут с одной проблемкой и хотел обсудить ее с комьюнити. Я люблю тесты, а интеграционные так просто обожаю. Но иногда приходится работать с библиотеками к публичным API каких-либо сервисов, в которых URL до этого API зашит в самой библиотеке. Для примера, возьмем библиотеку к Telegram API (подставь любое другое API) у которой URL зашиты с помощью следующей конструкции: // Telegram constants const ( // APIEndpoint is the endpoint for all API methods, // with formatting for Sprintf. APIEndpoint = "https://api.telegram.org/bot%s/%s" // FileEndpoint is the endpoint for downloading a file from Telegram. FileEndpoint = "https://api.telegram.org/file/bot%s/%s" ) Так вот у меня есть желание замокать HTTP-сервер телеграма и подменить зашитый URL на свой собственный, что бы погонять e2e тесты в локальном окружении, но я не понимаю как это можно сделать. Пока есть следующие соображения: - Не мокать HTTP-сервер, а замокать библиотеку через интерфейсы. Вариант мне не очень нравится, т.к. хотелось бы все же сделать тесты именно интеграционным. - Форкнуть библиотеку и дописать сеттеры на эти URL для целей тестирования. Тоже не очень, т.к. потом разойдется код с родительской либой и это приседание нужно будет повторять при каждом обновлении версии - Создать такое локально окружение, которое будет резолвить api.telegram.org в условный 127.0.0.1, на котором я подниму свой мок (например через /etc/hosts). Пока склоняюсь к этому варианту, но вносить изменения в конфигурацию ОС ради тестов тоже не хотелось бы. Так вот. Существует ли какой-нибудь идиоматический способ решения моей проблемы в Golang?
Боюсь, все вменяемые способы решения данной проблемы вы привели. Думаю, авторы решая упростить пользование библиотекой не подумали про интеграционные тесты. Думаю, можно им написать, чтобы предусмотрели возможность внешней замены адреса (маловероятно, но вдруг сменился адрес api и всем придется ждать новой версии библиотеки, либо форкать)
Pavel
Боюсь, все вменяемые способы решения данной проблемы вы привели. Думаю, авторы решая упростить пользование библиотекой не подумали про интеграционные тесты. Думаю, можно им написать, чтобы предусмотрели возможность внешней замены адреса (маловероятно, но вдруг сменился адрес api и всем придется ждать новой версии библиотеки, либо форкать)
Rubber duck метод в действии. Пока писал свое сообщение обратил внимание, что конкретно в библиотеке телеграм таки есть конструктор, в который можно передать свой URL. Но я встречал много похожих библиотек, где такое не предусмотрели. Получается самый "правильный" способ для авторов таких библиотек сделать их готовыми для интеграционных тестов - это оставить такую лазейку потребителям?
Sergey
ну либо все внешние зависимости (включая константы) внедрять, либо делать несколько конструкторов (по умолчанию и с заданием параметров)
Null
💻 Средние highload паттерны на Go Мне импонируют простые подходы, так как over engineering подходы требуются в исключительных проектах, и то чаще всего только в отдельно взятых подсистемах, в остальном можно воспользоваться давно известными лучшими практиками. Статья ориентирована на начинающих разработчиков и может служить отправной точкой для дальнейшего изучения. В этой статье подходы ориентированы на масштабирование приложения при верхнеуровневом рассмотрении. Подходы универсальны, приписка языка Go только потому, что сама реализация приложения на нем. Для наглядности, примеры будут упрощены, а чтобы было интереснее наблюдать, проведем замеры производительности. Ну и конечно же делитесь своим опытом масштабирования, буду рад взять на заметку. ➡️ Читать дальше @Golang_google
Алексей
Ребята. Что сейчас используют типа FTP для хранения файлов в облаке? Есть стандартные решения?
Алексей
Ого! Спасибо)
Алексей
Веб клиент и сервер?
Алексей
А если на своих серверах?
Алексей
minio
Спасибо!!!
Алексей
Коллеги. Есть ли системы хранения уже структурированных данных типа MinIO? Минайо для хранения неструктурированных объектов
Миринговин
💻 Средние highload паттерны на Go Мне импонируют простые подходы, так как over engineering подходы требуются в исключительных проектах, и то чаще всего только в отдельно взятых подсистемах, в остальном можно воспользоваться давно известными лучшими практиками. Статья ориентирована на начинающих разработчиков и может служить отправной точкой для дальнейшего изучения. В этой статье подходы ориентированы на масштабирование приложения при верхнеуровневом рассмотрении. Подходы универсальны, приписка языка Go только потому, что сама реализация приложения на нем. Для наглядности, примеры будут упрощены, а чтобы было интереснее наблюдать, проведем замеры производительности. Ну и конечно же делитесь своим опытом масштабирования, буду рад взять на заметку. ➡️ Читать дальше @Golang_google
"средний хайлоад"? Давайте уже лоу хайлоад для локалхоста.
Alexander
"средний хайлоад"? Давайте уже лоу хайлоад для локалхоста.
нано хайлоад прямиком из Сколково не хочешь?
Тимофей
Лоу Лоу Лоу мидл Лоу хай Мидл Лоу Мидл мидл Мидл хай Хай Лоу Хай мидл Хай хай (лоад)
anhckie
есть ли какой-то темплейт для репы микросервиса? ну типа с иерархий папок, типа по "стандартам"
anhckie
шоб не руцями делать их все