Memos — это легкий сервис для ведения заметок, ориентированный на конфиденциальность;
написан на React и Go.
Позволяет удобно записывать свои мысли
Быстрый старт с Docker:
docker run -d \
--init \
--name memos \
--publish 5230:5230 \
--volume ~/.memos/:/var/opt/memos \
neosmemo/memos:stable
📌 GitHub
📌 Доки
@Golang_google
#golang #programming #selfhosted
Please open Telegram to view this post
VIEW IN TELEGRAM
Он позволяет собирать, агрегировать и визуализировать данные о событиях без лишней нагрузки, что делает его отличной альтернативой громоздким SaaS-решениям.
Благодаря использованию SQLite для хранения агрегированных данных, инструмент имеет минимальный объем занимаемой памяти (около 20 МБ) и способен обрабатывать свыше миллиарда событий в месяц.
▪ Эффективное агрегирование событий
Вместо хранения каждого отдельного события Minimalytics суммирует данные, что снижает нагрузку на систему и экономит место для хранения.
▪ Встроенный веб-интерфейс
Удобная панель управления позволяет визуализировать собранные данные с помощью интерактивных графиков, что упрощает анализ событий в реальном времени.
▪ Преимущества для разработчиков
Для внутренних сервисов и небольших проектов, где важна каждая единица ресурса, Minimalytics предлагает простое и масштабируемое решение, обходя ограничения бесплатных тарифов у крупных SaaS-платформ.
git clone https://github.com/nafey/minimalytics.git
cd minimalytics
▪ Github
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Инструмент написан на Go — работает быстро даже на слабых устройствах.
Его цель — повысить анонимность в сети, затруднив трекинг и таким образом снизить ценность ваших данных для продажи.
▪️ Как работает?
▪ Генерирует «шум» — случайные запросы к сайтам, имитирующие поведение реального пользователя.
▪ Смешивает ваш настоящий трафик с фоновым, делая его менее заметным для анализа.
🕶️ Кастомизация:
Настраиваемые User-Agent для имитации разных устройств.
⚙️ Точный контроль:
Регулировка глубины обхода (сколько страниц «шумового» трафика посетить).
Настройка интервалов ожидания между запросами.
⚠️Важно!
Используйте Urusai только в легальных целях — например, для защиты приватности, а не для атак на инфраструктуру.
🚀 Совет: Запускайте инструмент в связке с VPN/Tor для максимальной анонимности.
▪ Github
Please open Telegram to view this post
VIEW IN TELEGRAM
🔎 git-who — это простая консольная утилита для Git, которая помогает быстро определить, кто из участников команды чаще всего работает с конкретными файлами или строками кода.
Это альтернатива стандартной команде
🔥 Чем полезен?
Быстрый поиск ответственных: Показывает, кто последним редактировал строки, директории или файлы.
🖥 Упрощение Code Review: Помогает понять, кого стоит привлечь к обсуждению изменений.
📌 Github
Это альтернатива стандартной команде
git blame,
но с упором на читаемость и удобство.🔥 Чем полезен?
Быстрый поиск ответственных: Показывает, кто последним редактировал строки, директории или файлы.
$ git clone [email protected]:sinclairtarget/git-who.git
$ cd git-who
$ rake
$ ./git-who --version
📌 Github
Please open Telegram to view this post
VIEW IN TELEGRAM
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Вот основные моменты:
Цель оптимизации: Разработчики стремятся устранить разрыв в скорости выполнения между интерпретаторами на Go и C++, применяя современные методы оптимизации.
Технические приёмы: Обсуждаются техники, такие как улучшенное профилирование, эффективное управление памятью и использование параллелизма для ускорения работы кода.
Анализируются проблемы, возникающие при разработке высокопроизводительных интерпретаторов на Go, и предлагаются пути их преодоления.
Практические результаты: Представлены результаты тестирования, показывающие, как новые подходы позволяют значительно улучшить производительность и делают Go конкурентоспособным выбором для создания интерпретаторов.
Эта статья демонстрирует пример того, как на Go можно добиться высоких скоростей, используя целенаправленные оптимизации и современные технологии разработки.
▪ Читать
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
fabric представляет собой модульную структуру для решения конкретных задач с помощью продвинутого набора промптов ИИ.
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
🔒 Надежная защита: использует шифр XChaCha20 и алгоритм генерации ключей Argon2, обеспечивая высокий уровень безопасности.
📦 Минимальный размер: всего 3 MB.
🚀 Портативность: не требует установки и административных прав.
🔑 Безопасный генератор паролей: создает криптографически стойкие пароли.
🗝 Поддержка ключевых файлов: можно использовать как дополнительную или единственную форму аутентификации.
#Linux #Privacy #Security
Please open Telegram to view this post
VIEW IN TELEGRAM
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Истоки и проблемы: В Go 1.18 появились типовые параметры и ограничения, которые требовали введения core types для унификации операций над обобщёнными типами. Однако это добавило сложности как в спецификацию языка, так и в понимание работы некоторых операций (например, срезов и индексирования) даже для негeneric-кода.
Изменения в Go 1.25: В предстоящем релизе Go 1.25 концепция core types была полностью удалена из спецификации. Вместо этого теперь используются более явные и понятные правила, что упрощает изучение языка и повышает ясность спецификации без изменения поведения существующего кода.
Таким образом, пост подчёркивает, что отказ от core types делает спецификацию Go проще и понятнее, одновременно открывая возможности для будущих улучшений языка.
🔗 Читать
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
В проектах с разными версиями Terraform, OpenTofu, Terragrunt или Atmos важно быстро и надёжно переключаться между ними.
tenv автоматизирует этот процесс и делает его максимально удобным.
Возможности:
• Гибкое управление версиями — легко переключайтесь между версиями OpenTofu, Terraform, Terragrunt и Atmos
• Автоматическое определение версии — анализирует все релевантные конфигурационные файлы и точно подбирает нужную версию
• Проверка подписи — поддержка PGP (через gopenpgp) и cosign
• Быстрее и стабильнее, чем tfenv и аналоги — написан на Go, без Shell-магии
• Кроссплатформенный — работает на Linux, macOS, Windows и других ОС
• Простая установка — доступен через Homebrew, APT, Chocolatey и другие пакетные менеджеры
• Использование как Go-модуля — предоставляет стабильный API через tenvlib для интеграции в собственные решения
tenv совместим с синтаксисом
tfenv / tofuenv,
но предлагает более надёжную архитектуру и современный подход к управлению версиями в DevOps- и SRE-процессах.@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Статья посвящена недавнему объявлению Microsoft о миграции компилятора TypeScript с JavaScript на Go с целью повышения скорости компиляции в 10 раз.
Основные моменты:
▪ Фокус на компиляторе, а не на языке: Улучшение касается именно скорости работы компилятора, а не быстродействия самого TypeScript-кода в браузере или Node.js.
▪ Архитектурные различия: Объясняется, что однопоточная модель Node.js с event loop не оптимальна для CPU-интенсивных задач, таких как компиляция, в отличие от Go с его легковесными горутинами и нативной поддержкой параллелизма.
▪ Причины повышения производительности: Скорее всего, 10-кратное улучшение связано с тем, что оригинальная реализация на JavaScript не была достаточно оптимизирована для вычислительно сложных задач, а переход на Go позволяет обойти ограничения event loop.
▪ Альтернативы и их сложности: Рассматриваются и недостатки использования worker threads в Node.js, где проблемы с обменом данными и накладными расходами остаются актуальными.
▪ Вопросы поддержки браузеров: Поднимается вопрос, как будет обеспечена работа TypeScript в браузерах, ведь Go не работает нативно в них – возможные решения включают WebAssembly или поддержание параллельной реализации на JavaScript.
Статья анализирует не только заявленный прирост производительности, но и более глубокие архитектурные аспекты, демонстрируя, почему выбор Go может быть оправдан для сложных, CPU-интенсивных задач, таких как компиляция TypeScript.
📌 Читать полностью
@golang_google
Основные моменты:
▪ Фокус на компиляторе, а не на языке: Улучшение касается именно скорости работы компилятора, а не быстродействия самого TypeScript-кода в браузере или Node.js.
▪ Архитектурные различия: Объясняется, что однопоточная модель Node.js с event loop не оптимальна для CPU-интенсивных задач, таких как компиляция, в отличие от Go с его легковесными горутинами и нативной поддержкой параллелизма.
▪ Причины повышения производительности: Скорее всего, 10-кратное улучшение связано с тем, что оригинальная реализация на JavaScript не была достаточно оптимизирована для вычислительно сложных задач, а переход на Go позволяет обойти ограничения event loop.
▪ Альтернативы и их сложности: Рассматриваются и недостатки использования worker threads в Node.js, где проблемы с обменом данными и накладными расходами остаются актуальными.
▪ Вопросы поддержки браузеров: Поднимается вопрос, как будет обеспечена работа TypeScript в браузерах, ведь Go не работает нативно в них – возможные решения включают WebAssembly или поддержание параллельной реализации на JavaScript.
Статья анализирует не только заявленный прирост производительности, но и более глубокие архитектурные аспекты, демонстрируя, почему выбор Go может быть оправдан для сложных, CPU-интенсивных задач, таких как компиляция TypeScript.
📌 Читать полностью
@golang_google
В этой игре вы бросаете фишки, стремясь составить линию из четырёх подряд по горизонтали, вертикали или диагонали.
Главная фишка проекта – AI противник, который оказывается неожиданно умным и сложным, заставляя вас применять стратегическое мышление и тактику.
ного интеллекта в играх.
📌 Github
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Основные темы, рассмотренные в статье:
Что такое DNS и его значение:
DNS (Domain Name System) действует как телефонная книга интернета, преобразуя удобочитаемые доменные имена (например, google.com) в машинно-читаемые IP-адреса (например, 142.250.182.206), облегчая навигацию в сети.
Пошаговый процесс разрешения DNS:
1️⃣ Инициирование запроса: Локальный резолвер в операционной системе проверяет кэш на наличие IP-адреса запрашиваемого домена. Если адрес отсутствует, запрос направляется к рекурсивному DNS-резолверу.
2️⃣ Обращение к рекурсивному резолверу: Рекурсивный резолвер, такой как Google Public DNS (8.8.8.8) или Cloudflare DNS (1.1.1.1), принимает запрос и начинает процесс поиска.
3️⃣ Запрос к корневому DNS-серверу: Рекурсивный резолвер обращается к корневому серверу, который направляет его к соответствующему серверу верхнего уровня (TLD) для запрашиваемого домена.
4️⃣ Запрос к TLD-серверу: Сервер верхнего уровня (например, для доменов .com или .tech) указывает на авторитетный сервер конкретного домена.
5️⃣ Запрос к авторитетному серверу: Авторитетный сервер предоставляет окончательный IP-адрес запрашиваемого домена.
Создание собственного DNS-сервера на Go:
В статье вы найдите гайд по разработке простого DNS-сервера на Go, и предоставляет исходный код проекта для самостоятельного изучения.
Годное чтиво на выходные )
📌Читать
#junior #golang #go #dns
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM