В поисках работы и фриланс-проектов для разработчиков Golang в 2024 году могут возникнуть некоторые сложности, особенно для новичков. Часто они сталкиваются с дилеммой: не знают, с чего начать, и чувствуют, что устроиться на работу в этой сфере практически невозможно. Однако стоит помнить, что первую работу найти может быть непросто, но если приложить усилия и старания, то все возможно. Давайте рассмотрим список ресурсов, где регулярно публикуются вакансии и фриланс проекты для Go разработчико…
Почему патологоанатомы обычно заняты совсем не вскрытиями, и при чём тут Go?Так, предыдущим вопросом мы завладели вашим вниманием, теперь о главном. В январе мы рассказали Хабру о нашей новой конференции для Go-разработчиков и привели примеры докладов.А теперь, когда GoFunc уже на носу, представляем Хабру полную программу с описаниями всех докладов. Там про самое разное — и инструменты/библиотеки, и архитектуру, и сам язык/рантайм. Ну и о том, чем заняты патологоанатомы, тоже сказано, так уж п…
Это перевод одноименной статьи.Базовое использованиеСериализации JSON в GoВ стандартном пакете encoding/json присутствуют механизмы сериализации marshaling и десериализации unmarshaling JSON.Пример:data, err := json.Marshal(yourVar)Метод Marshal() принимает переменную yourVar любого типа, которую нужно сериализовать в JSON, и возвращает два значения: сериализованные данные в виде байтового массива ([]byte) и ошибку (error), если таковая возникает.Пример:data, err := json.Marshal(yourVar) if e…
Привет, Хабр!Возможно, многие сталкивались с задачей: есть сервер с некими cronjob-ами, результат выполнения которых хотелось бы мониторить определенному числу лиц, но при этом сервер находится в каком-нибудь intranet и не имеет доступа к сети интернет. Вот и у нас однажды возникла подобная проблема. Единственным доступным средством коммуникации с внешним миром у сервера был почтовый шлюз, через который можно было отправить электронную почту. До некоторого времени задача решалась отправкой нес…
Реализация простого HTTP CONNECT прокси-сервера на Go, квест с маркировкой сетевых пакетов и запуск программы в Android.ИнтроПосле долгих лет работы разработчиком софта я хочу быть... всё тем же разработчиком. Мне это так же интересно, как и четверть века назад, когда я только начинал программировать. Даже больше - за это время количество того, чего я не знаю, многократно увеличилось, и всё стало ещё интереснее. Это та стихия, в которой я чувствую себя как рыба в воде.Практически каждый проект…
1. ВведениеВ этой статье я хотел бы описать библиотеки для мультиподписи и связанные с ними MPC(multi party computation или многосторонние вычисления). Мне сложно претендовать на четкое описание MPC или мультиподписей. Но цель лишь уведомить о наличие всего этого в сети. Так как я не увидел в ru сегменте достаточного кол-ва информации по данной важной теме. Статья будет разделена на 2 части - небольшое описание протоколов и реализации.Столкнулся с данной темой, когда дорабатывал библиотку для …
Примерно шесть лет назад я написал пост о том, как пишу HTTP-сервисы на Go, и сегодня я снова хочу рассказать, как пишу HTTP-сервисы.Тот пост оказался довольно популярным и вызвал обсуждения, повлиявшие на то, как я делаю это сегодня. И спустя годы ведения подкаста Go Time, обсуждения Go в X/Twitter и поддержки подобного кода я решил, что настало время обновить информацию.(Если вы педант и скажете, что Go не совсем 13 лет, то я отвечу, что начал писать HTTP-сервисы на Go версии .r59.)В этом по…
ДисклеймерДанная статья - проба пера.Данная статья - перевод/вольная интерпретация соответствующей страницы с Go Wiki. Если знаете английский язык, то, возможно, стоит зайти в первоисточник, а здесь посмотреть лишь примеры.В данной статье будет речь только о простых одноуровневых циклах. ПланЧто такое range func?НюансыPush/Pull - семантикаКак попробоватьПример: перебор слайса в случайном порядкеПослесловиеЧто такое range func?Range func - это функция-итератор, которую можно использовать в for-…
Салют, Хабр!Go Kit предоставляет стандартизированный способ создания сервисов, с ее помощью можно легко реализовать совместимость сервисов. С его помощью можно легко интегрировать различные транспортные протоколы, такие как HTTP, RPC, gRPC, и многое другое, а также реализовывать общие паттерны: логирование, метрики, трассировка. В общем, Go Kit хорошо подходит для разработки микросервисов на go.Мотивацию создания этой либы разработчики описали так:Go стал языком сервера, но он по-прежнему недо…