Там сегодня на Coursera курсы бесплатные стартуют по Go от МФТИ, MAIL.RU GROUP и ФРОО: «Разработка веб-сервисов на Go - основы языка» и «Разработка веб-сервисов на Golang, часть 2» . Присоединяйтесь, т.к. 2 часть не только для новичков! 😎 (не реклама)
Отладка приложения
В связи с ростом популярности микросервисов и контейнеризации у разработчика может возникнуть задача отладки Go приложения в Kubernetes из IDE. Давайте ознакомимся с материалами статьи, в которой автор поэтапно описывает все процессы.
В связи с ростом популярности микросервисов и контейнеризации у разработчика может возникнуть задача отладки Go приложения в Kubernetes из IDE. Давайте ознакомимся с материалами статьи, в которой автор поэтапно описывает все процессы.
Medium
Debug a Go Application in Kubernetes from IDE
As a Developer, it is always useful to be able to debug an application with its own IDE.
Подборка из 12 книг для изучения языка программирования Go
KV.by
12 книг для изучения языка программирования Go
Golang или Go — относительно новый язык, который ориентирован на многопоточность. Его в 2009 году запустил концерн Google. На Западе он уже обрёл свою популярность и занял нишу среди других языков, но до нас толком не дошёл. Лишь сейчас начинаются попытки…
Полный перевод интервью с Райаном Далем (создатель Node.js) о языке программирования Go с многообещающим заголовком «Для серверов я не могу представить другой язык кроме Go»
Хабр
Интервью с Райаном Далем, создателем Node.js
Райан Даль (Ryan Dahl) в 2009 году представил Node.js, спустя несколько лет отошел от дел, а на прошлой неделе нашумел новым проектом: deno — A secure TypeScript runtime on V8 ( GitHub , распаковка )....
Полезная утилита Govalidate позволяет на лету проверить:
- установку и версию Go;
- правильно ли настроен PATH;
- установлены ли зависимости CGO;
- поддержку плагина для доступных редакторов.
https://github.com/rakyll/govalidate
- установку и версию Go;
- правильно ли настроен PATH;
- установлены ли зависимости CGO;
- поддержку плагина для доступных редакторов.
https://github.com/rakyll/govalidate
GitHub
GitHub - rakyll/govalidate: Validates your Go installation and dependencies.
Validates your Go installation and dependencies. Contribute to rakyll/govalidate development by creating an account on GitHub.
Vim – довольно противоречивый текстовый редактор. Если удалось закрыть его с первого раза, то он определенно для вас. Vim нельзя просто запустить и начать работать – требуется определённая подготовка. Зато стоит раз испытать его в деле и поражаешься тому, как можно было без него обходиться. Для работы с определенным языком программирования необходимо устанавливать плагины, и Go здесь не является исключением:
- govim (написан на Go);
- vim-go (написан на VimScript).
- govim (написан на Go);
- vim-go (написан на VimScript).
GitHub
GitHub - govim/govim: govim is a Go development plugin for Vim8, written in Go
govim is a Go development plugin for Vim8, written in Go - govim/govim
Оптимизация использования ресурсов, сокращение времени обслуживания запросов, горизонтальное масштабирование кластера, а также обеспечение отказоустойчивости (резервирования) – все это про балансировку нагрузки.
Сегодня ознакомимся с материалами статьи, в которой описываются этапы создания простого балансировщика нагрузки на Go.
Сегодня ознакомимся с материалами статьи, в которой описываются этапы создания простого балансировщика нагрузки на Go.
Если вы используете архитектуру микросервисов, вы однозначно хотите попробовать или уже попробовали фреймворк gRPC
Хоть и на английском, но здесь доступно рассказывают о gRPC и о том, как его использовать с Protocol Buffer для разработки приложений на Go (там и Java немного зацепили, без обид).
Хоть и на английском, но здесь доступно рассказывают о gRPC и о том, как его использовать с Protocol Buffer для разработки приложений на Go (там и Java немного зацепили, без обид).
YouTube
The complete gRPC course [Golang, Java, Protobuf]
If you're building APIs for your microservices or mobile applications, you definitely want to try gRPC. It is super-fast, strongly-typed, and you no longer n...
В своём репозитории автор представляет наиболее интересные по его мнению и часто задаваемые практические вопросы на собеседованиях на позицию Go-разработчика. Упор сделан именно на эффективность алгоритма программы и структуры данных.
https://github.com/hoanhan101/algo/
https://github.com/hoanhan101/algo/
GitHub
GitHub - hoanhan101/algo: 101+ coding interview problems in Go
101+ coding interview problems in Go. Contribute to hoanhan101/algo development by creating an account on GitHub.
Очередная практическая полезность от 4gophers. Сегодня ознакомимся с переведенной статьей под названием «Пишем свой BitTorrent клиент на Go»: https://4gophers.ru/articles/bittorrent/
TinyGo – это проект, который позволяет создавать приложения на языке Go для микроконтроллеров и современных веб-браузеров путем создания нового компилятора на основе LLVM.
Вы можете компилировать и запускать программы TinyGo на нескольких различных платах микроконтроллеров, таких как BBC micro: bit и Arduino Uno.
TinyGo также может быть использован для создания кода WebAssembly (WASM).
https://tinygo.org
https://github.com/tinygo-org/tinygo
Вы можете компилировать и запускать программы TinyGo на нескольких различных платах микроконтроллеров, таких как BBC micro: bit и Arduino Uno.
TinyGo также может быть использован для создания кода WebAssembly (WASM).
https://tinygo.org
https://github.com/tinygo-org/tinygo
microbit.org
Micro:bit Educational Foundation
The pocket-sized computer transforming the world
В данном плейлисте вы найдёте ответы на многие вопросы, связанные с написанием REST API на Go: https://m.youtube.com/playlist?list=PLehOyJfJkFkJ5m37b4oWh783yzVlHdnUH
Тема WebAssembly продолжает набирать обороты. Мы это явно видим, т.к. этот инструмент постоянно на слуху и появляются средства для упрощения работы с ним.
Встречайте экспериментальную библиотеку Vugu, предназначенную для создания веб-интерфейсов на Go + WebAssembly, которая работает в вашем браузере уже сегодня: https://github.com/vugu/vugu
Встречайте экспериментальную библиотеку Vugu, предназначенную для создания веб-интерфейсов на Go + WebAssembly, которая работает в вашем браузере уже сегодня: https://github.com/vugu/vugu
Разбираемся с разработкой генератора идентификаторов на Go
В статье речь идет не о простых идентификаторах пользователя, а об Identicon – это визуальное представление хеш-значения, служащее для идентификации пользователя компьютерной системы в виде аватара, защищая его конфиденциальность.
В статье речь идет не о простых идентификаторах пользователя, а об Identicon – это визуальное представление хеш-значения, служащее для идентификации пользователя компьютерной системы в виде аватара, защищая его конфиденциальность.
Bartfokker
Tutorial: Identicon generator in Go - Bart Fokker
How to build your own identicon generator using Go
#MoscowTravelHack
Такого ещё не было! Первый в России хакатон по созданию цифровых решений для туризма Moscow Travel Hack. Придумай новые продукты для путешественников и жителей города. Задачи на хакатон предложили 10 партнёров: «МегаФон», Facebook, PANORAMA 360, MTS Startup Hub, «Аэроэкспресс», Пушкинский музей, «Царицыно», Discover Moscow, «Город открытий» и Russpass.
В каждый трек пройдет по 5 команд. Среди призов — не только 100 000 рублей, но и возможность реализовать проект с партнёрами после хакатона. Придумывать решение заранее не обязательно! Подать заявку можно индивидуально или командой.
Успей до 28 января!
Подробности на сайте travelhack.moscow
Такого ещё не было! Первый в России хакатон по созданию цифровых решений для туризма Moscow Travel Hack. Придумай новые продукты для путешественников и жителей города. Задачи на хакатон предложили 10 партнёров: «МегаФон», Facebook, PANORAMA 360, MTS Startup Hub, «Аэроэкспресс», Пушкинский музей, «Царицыно», Discover Moscow, «Город открытий» и Russpass.
В каждый трек пройдет по 5 команд. Среди призов — не только 100 000 рублей, но и возможность реализовать проект с партнёрами после хакатона. Придумывать решение заранее не обязательно! Подать заявку можно индивидуально или командой.
Успей до 28 января!
Подробности на сайте travelhack.moscow
Замечательный теоретико-практический тур по языку Go
Последовательно, от простого к сложному, и все это присыпано практикой. В общем все как вы любите: https://tour.golang.org/list
Последовательно, от простого к сложному, и все это присыпано практикой. В общем все как вы любите: https://tour.golang.org/list
Теоретическая статья о том, как с минимальными изменениями исходных кодов проекта реализовать кэширование часто запрашиваемых данных.
Cинхронизация кэша через Redis для сервиса на Go: https://habr.com/ru/post/482704/
Cинхронизация кэша через Redis для сервиса на Go: https://habr.com/ru/post/482704/
GitHub
GitHub - redis/go-redis: Redis Go client
Redis Go client. Contribute to redis/go-redis development by creating an account on GitHub.
Автоматическая проверка безопасности исходных кодов Go-приложений
Инструмент Gosec позволяет проверять исходные коды ваших проектов на такие ошибки конфигурации или уязвимости, как: жестко закодированные учетные данные, привязка ко всем интерфейсам, построение SQL-запроса с использованием формата строки / объединения строк и многое другое. Инструмент позволяет гибко настраивать параметры запуска, автоматически выдавать номер и описание CWE (Common Weakness Enumeration).
https://github.com/securego/gosec
https://securego.io/
Инструмент Gosec позволяет проверять исходные коды ваших проектов на такие ошибки конфигурации или уязвимости, как: жестко закодированные учетные данные, привязка ко всем интерфейсам, построение SQL-запроса с использованием формата строки / объединения строк и многое другое. Инструмент позволяет гибко настраивать параметры запуска, автоматически выдавать номер и описание CWE (Common Weakness Enumeration).
https://github.com/securego/gosec
https://securego.io/
GitHub
GitHub - securego/gosec: Go security checker
Go security checker. Contribute to securego/gosec development by creating an account on GitHub.
Гайд по использованию веб-сокетов в Go, включая лучшие инструменты и пошаговое руководство
Взаимодействие клиента и сервера без обновления страницы – это то, что мы считаем само собой разумеющимся. Но в прошлом реализация такого функционала была настоящей проблемой для разработчиков, которые прошли долгий путь от длинных HTTP-опросов и AJAX и наконец нашли решение для создания приложений реального времени: https://yalantis.com/blog/how-to-build-websockets-in-go/
Взаимодействие клиента и сервера без обновления страницы – это то, что мы считаем само собой разумеющимся. Но в прошлом реализация такого функционала была настоящей проблемой для разработчиков, которые прошли долгий путь от длинных HTTP-опросов и AJAX и наконец нашли решение для создания приложений реального времени: https://yalantis.com/blog/how-to-build-websockets-in-go/
Yalantis
How to implement instant messaging with WebSockets in Go
Drive in the true real-time functionality to your app with WebSockets in Go. In out post, we explain what WebSockets are and how to add them to your app.
Вы покрываете код тестами, или вовсе используете подход TDD (разработка через тестирование)? В любом случае, познакомьтесь с качественным материалом по данной теме: https://medium.com/@gonzalo.molina1996/tdd-with-table-driven-test-in-go-3b1e6dc25c0b
Medium
TDD with Table-Driven Test in Go
One of the most important things developing software is the way of testing functionalities of the program and maintain clean and readable…