Golang Notes
3 subscribers
5 photos
1 file
26 links
Channel contains researches about Golang language and architecture patterns.
No ads.
No spam.
No politics.
Download Telegram
Очень полезная информация для гошника любого уровня, качественно расписанные кейсы с примерами
Однозначно рекомендую :)

https://100go.co/
Немного юмора после долгого перерыва в постинге :)
Немного не про го. Светлая память.
Попробовал завести в свою инфру, из минусов - неудобно конфигурятся исключения для обработки
🔧NilAway — инструмент статического анализа для обнаружения потенциальных nil-паник в коде на Go, который позволяет ловить их во время компиляции, а не во время выполнения.

🤩Команда Uber постаралась, сделав похожий на nilness инструмент с гораздо более сложными и мощными методами статического анализа для отслеживания потоков nil как внутри пакета, так и между пакетами.

var p *P
if someCondition {
p = &P{}
}
print(p.f)

Результат👇

go.uber.org/example.go:12:9: error: Potential nil panic detected. Observed nil flow from source to dereference point:
-> go.uber.org/example.go:12:9: unassigned variable p accessed field f
💡Начиная с Go 1.22, функции Delete/DeleteFunc/Compact/CompactFunc/Replace в пакете стандартной библиотеки slices обнуляют освобожденные элементы, чтобы избежать потенциальной утечки памяти.

👉 Речь про этот proposal.

#новости
Forwarded from Senior Software Vlogger
MySQL добавляет Javascript для хранимок 🥶


CREATE FUNCTION gcd_js (a INT, b INT) RETURNS INT
LANGUAGE JAVASCRIPT AS $$
let [x, y] = [Math.abs(a), Math.abs(b)];
while(y) [x, y] = [y, x % y];
return x;
$$;


Работает все на JDK-шном GraalVM, который вообще говоря очень крутая штука.

Новость: https://blogs.oracle.com/mysql/post/introducing-javascript-support-in-mysql

Благодарность 🫶 | YouTube | Twitter
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from linkmeup
Если кто не знает, то у гугла есть курс по Rust, который они используют для обучения внутренних разработчиков. Что-бы прям быстренько вкатить в модный язык примерно любого.
Примечательно, что там не набор видосов и документов, а всё прям завёрнуто в красивый mdbook (написанный на расте, кстати).
https://github.com/google/comprehensive-rust
Forwarded from /usr/bin
The guide to kubectl I never had

Авторский путеводитель по kubectl и плагинам. Полезное чтиво.

❗️Статья на Медиум. Вы знаете, что делать 🙃
#советы Баланс между работой и отдыхом

Я давно не писал текстовые посты, но сейчас хочу поделиться своим личным опытом. У меня есть несколько знакомых, которые выгорели от интенсивной работы. Обычно это был длительный период интенсивной работы, где все остальное отодвигались на второй план. Казалось, что это единственное, что у них осталось в жизни. От этого страдали личные отношения, здоровье и общение. И с каждым таким примером я задавался вопросом, что позволяет не выгорать.

Несмотря на то, что я работаю по 10 полных часов в день (с 9 до 21 с перерывами на 1:30 и 30 минут), я для себя выработал правила, которые мне помогают выдерживать баланс между работой и личной жизнью:

1. Я строго соблюдаю расписание, которое запланировано в календаре на 1-2 дня вперёд. Если время 21:00, а я не закончил задачу, то я спокойно переношу её на следующий день. После этого времени я с семьёй.
2. Минимум уведомлений - у меня телефон всегда на беззвучном режиме, потому уведомления и почту я разбираю только в определенные промежутки времени, так я могу сконцентрироваться на работе в остальное время и получить осязаемый результат за день, который подпитывает мотивацию.
3. Не день выделяю 2-3 задачи с тегом - цель на день, если эти задачи сделаны, то значит день уже прошел не зря, что тоже позволяет повысить мотивацию.
4. Выходные - только для отдыха, развлечений и времени с семьей. Даже если очень хочется, я стараюсь не работать и отложить дела до понедельника.
5. 1 день в 2 недели я разрешаю себе сократить рабочий день до 5 часов и вторую половину для посвятить личным делам.
6. Спорт - каждый день я проезжаю около 10 км на велосипеде перед обедом в 1:30 часовой перерыв. Это очень хорошо перезагружает.

Надеюсь, что эти советы будут для вас тоже полезными. А как вы справляетесь с нагрузкой?
Интересное, но слишком минималистичное решение для обработки сигналов
Стоит отметить, что обработка сигналов типична только для приложений определенного типа, которые, например, используются для управления nix OS
В большинстве случаев подобное не требуется
Forwarded from DevOps&SRE Library
Mastering Graceful Shutdowns in Go: A Comprehensive Guide for Kubernetes

https://hackernoon.com/mastering-graceful-shutdowns-in-go-a-comprehensive-guide-for-kubernetes
Forwarded from Useful Tools | Linux | GitOps | DevOps (Dmitry Malinin)
ohshitgit - описание некоторых особенностей git в хардкор стиле, или когда в официальной документации ничего непонятно !

https://ohshitgit.com/ru

есть и более лайтовая версия

https://dangitgit.com/ru

опубликовано в @gitgate

#manual #dog #git
Forwarded from HABR FEED + OPENNET
Опубликована распределённая СУБД Citus 13.0 #opennet
https://www.opennet.ru/opennews/art.shtml?num=62701

Компания Citus Data, принадлежащая Microsoft, опубликовала распределённую СУБД Citus 13.0, реализованную в форме расширения к PostgreSQL 17. Citus обеспечивает горизонтальное масштабирование PostgreSQL в кластере на базе типового оборудования и позволяет разносить данные по узлам при помощи шардинга (sharding) с настройкой разделения на уровне столбцов и схемы хранения. Для приложений кластер Citus выглядит как один большой сервер PostgreSQL, объединяющий ресурсы образующих его узлов. Код написан на языке Си и распространяется под лицензией AGPLv3.