Forwarded from Proglib.academy | IT-курсы
Big Data и Data Science применяются не только в IT-гигантах, но и в некоммерческом секторе, где технологии анализа данных помогают оптимизировать работу организаций, собирать средства и оказывать помощь эффективнее.
▪️ Как некоммерческие организации используют Data Science.
▪️ Оптимизация фондов и финансирования с помощью аналитики.
▪️ Роль прогнозных моделей в благотворительности.
▪️ Кейсы Amnesty International, Khan Academy и DataKind.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1👾1
В Go 1.24 появилась экспериментальная библиотека
testing/synctest
, которая упрощает тестирование конкурентных программ. Теперь можно контролировать время в тестах и управлять синхронизацией асинхронных операций, делая тесты более надежными и предсказуемыми.📌 Что умеет
testing/synctest
• Позволяет тестам управлять временем с фиктивными часами.
• Упрощает тестирование горутин и асинхронных процессов.
• Делает тесты стабильнее за счет детерминированной синхронизации.
Чтобы попробовать, нужно включить экспериментальную фичу:
GOEXPERIMENT=synctest go test
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17💯3❤1
🤯 Побитовые операции в Go
Побитовые операторы работают с битами (0 и 1) и применяются к целочисленным переменным с одинаковой длиной битовой последовательности. Форматная строка %b используется для представления числа в бинарном формате.
Основные побитовые операторы в Go:
1.
2.
3.
4.
5.
6.
Пример использования побитового оператора AND для проверки чётности числа:
В этом примере проверяется младший значащий бит числа. Если он равен 1, число нечётное; если 0 — чётное.
Практическое применение побитовых операторов:
➖ Криптография: шифрование данных часто требует манипуляций на уровне битов для обеспечения безопасности.
➖ Сетевые технологии: управление правами доступа и настройка сетевых протоколов могут включать операции с битовыми масками.
➖ Оптимизация производительности: побитовые операции позволяют эффективно выполнять задачи, такие как умножение или деление на степени двойки, сдвигая биты влево или вправо.
➡️ Подробнее про побитовые операторы в источнике
🐸 Библиотека Go разработчика
Побитовые операторы работают с битами (0 и 1) и применяются к целочисленным переменным с одинаковой длиной битовой последовательности. Форматная строка %b используется для представления числа в бинарном формате.
Основные побитовые операторы в Go:
1.
&
: Побитовое AND2.
|
: Побитовое OR3.
^
: Побитовое XOR4.
&^
: AND NOT (сброс бита)5.
<<
: Сдвиг влево6.
>>
: Сдвиг вправоПример использования побитового оператора AND для проверки чётности числа:
package main
import "fmt"
func main() {
x := 125
if x&1 > 0 {
fmt.Println("Нечётное")
} else {
fmt.Println("Чётное")
}
}
В этом примере проверяется младший значащий бит числа. Если он равен 1, число нечётное; если 0 — чётное.
Практическое применение побитовых операторов:
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16❤7👾1
Работа мечты в один клик 💼
💭 Мечтаешь работать в Сбере, но не хочешь проходить десять кругов HR-собеседований? Теперь это проще, чем когда-либо!
💡 AI-интервью за 15 минут – и ты уже на шаг ближе к своей новой работе.
Как получить оффер?
📌 Зарегистрируйся здесь
📌 Пройди AI-интервью
📌 Получи обратную связь сразу же!
HR больше не тянут время – рекрутеры свяжутся с тобой в течение двух дней! 🚀
Реклама. ПАО СБЕРБАНК, ИНН 7707083893. Erid 2VtzquscAwp
💭 Мечтаешь работать в Сбере, но не хочешь проходить десять кругов HR-собеседований? Теперь это проще, чем когда-либо!
💡 AI-интервью за 15 минут – и ты уже на шаг ближе к своей новой работе.
Как получить оффер?
📌 Зарегистрируйся здесь
📌 Пройди AI-интервью
📌 Получи обратную связь сразу же!
HR больше не тянут время – рекрутеры свяжутся с тобой в течение двух дней! 🚀
Реклама. ПАО СБЕРБАНК, ИНН 7707083893. Erid 2VtzquscAwp
👍6😁5🤔3🤩2😢1
📕 Новинка компьютерной литературы про Go
Книга «Go: идиомы и паттерны проектирования» Джона Боднера — практическое руководство для разработчиков, желающих писать чистый и идиоматический код на Go.
Она поможет углубить знания и освоить эффективные практики проектирования, особенно полезные для тех, кто уже знаком с основами языка.
Основные темы книги:
➖ Паттерны проектирования в Go: подробное рассмотрение шаблонов, которые помогают строить масштабируемые и поддерживаемые приложения.
➖ Идиоматические конструкции: советы по использованию особенностей Go для написания кода, соответствующего лучшим практикам сообщества.
➖ Обработка ошибок и конкурентность: рекомендации по эффективному управлению ошибками и реализации конкурентных процессов с использованием горутин и каналов.
➡️ Рекомендуем к прочтению
🐸 Библиотека Go разработчика
Книга «Go: идиомы и паттерны проектирования» Джона Боднера — практическое руководство для разработчиков, желающих писать чистый и идиоматический код на Go.
Она поможет углубить знания и освоить эффективные практики проектирования, особенно полезные для тех, кто уже знаком с основами языка.
Основные темы книги:
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15😢3
📄 Go-документация в Neovim
godoc.nvim позволяет искать и просматривать документацию стандартных и локальных Go-пакетов прямо в редакторе, без необходимости переключаться в браузер или терминал.
Особенности godoc
• Быстрый поиск по стандартной библиотеке Go и вашему коду.
• Синтаксическая подсветка документации благодаря Tree-sitter.
• Интеграция с Telescope и Snacks для удобного выбора пакетов.
• Минимальные зависимости — нужен только
➡️ Попробовать проект
🐸 Библиотека Go разработчика
godoc.nvim позволяет искать и просматривать документацию стандартных и локальных Go-пакетов прямо в редакторе, без необходимости переключаться в браузер или терминал.
Особенности godoc
• Быстрый поиск по стандартной библиотеке Go и вашему коду.
• Синтаксическая подсветка документации благодаря Tree-sitter.
• Интеграция с Telescope и Snacks для удобного выбора пакетов.
• Минимальные зависимости — нужен только
go doc
и go list
.Please open Telegram to view this post
VIEW IN TELEGRAM
👍18🔥3
⚙️ Паттерн Saga в микросервисах
Saga – это паттерн управления распределёнными транзакциями, который позволяет избежать монолитных блокировок и традиционных ACID-ограничений.
Вместо одной большой транзакции процесс разбивается на локальные операции, каждая из которых выполняется в отдельном сервисе.
🏗 Два подхода к реализации
1. Оркестрация
➖ Управляется централизованным координатором
➖ Каждый шаг выполняется по команде оркестратора
❌ Минус: если оркестратор падает – процесс замирает
В Go можно реализовать с помощью Temporal.io или Cadence.
2. Хореография
➖ Нет центрального контроллера, сервисы реагируют на события друг друга
➖ Нет узкого места в виде одной точки отказа
❌ Минус: сложнее управлять, каскад событий может усложнить отладку
В Go можно использовать Kafka, NATS, RabbitMQ для коммуникации между сервисами.
💡 Какой выбрать
Оркестрация — проще в управлении, но менее гибкая
Хореография — сложнее в отладке, но лучше масштабируется
➡️ Подробнее про паттерн
🐸 Библиотека Go разработчика
Saga – это паттерн управления распределёнными транзакциями, который позволяет избежать монолитных блокировок и традиционных ACID-ограничений.
Вместо одной большой транзакции процесс разбивается на локальные операции, каждая из которых выполняется в отдельном сервисе.
🏗 Два подхода к реализации
1. Оркестрация
❌ Минус: если оркестратор падает – процесс замирает
В Go можно реализовать с помощью Temporal.io или Cadence.
2. Хореография
❌ Минус: сложнее управлять, каскад событий может усложнить отладку
В Go можно использовать Kafka, NATS, RabbitMQ для коммуникации между сервисами.
💡 Какой выбрать
Оркестрация — проще в управлении, но менее гибкая
Хореография — сложнее в отладке, но лучше масштабируется
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤3
Совет на 2025-й — будьте осторожнее с выбором работы.
IT-рынок штормит: массовые сокращения, заморозка найма, снижение зарплат. В такое время особенно важно отличать стоящие офферы от проходных.
Знакомо? Открываешь вакансию, а там: «Ищем middle-разработчика с опытом 10 лет, знанием 15 языков и готовностью работать за печеньки. Офис в Челябинске, релокация за ваш счет» 🤦♂️
Чтобы не тратить время на сотни сомнительных предложений, подпишитесь на IT Job Hub. Там мы отфильтровываем весь мусор и публикуем только избранные вакансии в стабильных компаниях:
— Зарплаты на уровне рынка, а не на уровне голодного студента
— Никаких «мы молодая и дружная семья» — только адекватные условия
— Проверенные работодатели, а не стартапы из сомнительных сфер
Вакансии удобно разбиты по тегам: #python #java #go #data #devops и по другим направлениям. Без воды и лишнего спама — только проверенные вакансии в знакомых компаниях.
Подписывайтесь, если не хотите упустить работу мечты → @proglib_jobs
IT-рынок штормит: массовые сокращения, заморозка найма, снижение зарплат. В такое время особенно важно отличать стоящие офферы от проходных.
Знакомо? Открываешь вакансию, а там: «Ищем middle-разработчика с опытом 10 лет, знанием 15 языков и готовностью работать за печеньки. Офис в Челябинске, релокация за ваш счет» 🤦♂️
Чтобы не тратить время на сотни сомнительных предложений, подпишитесь на IT Job Hub. Там мы отфильтровываем весь мусор и публикуем только избранные вакансии в стабильных компаниях:
— Зарплаты на уровне рынка, а не на уровне голодного студента
— Никаких «мы молодая и дружная семья» — только адекватные условия
— Проверенные работодатели, а не стартапы из сомнительных сфер
Вакансии удобно разбиты по тегам: #python #java #go #data #devops и по другим направлениям. Без воды и лишнего спама — только проверенные вакансии в знакомых компаниях.
Подписывайтесь, если не хотите упустить работу мечты → @proglib_jobs
👍1
SQLiteAdmin-Go — это легковесный веб-интерфейс для просмотра, редактирования и управления SQLite-базами прямо из браузера.
• Просмотр таблиц и схем базы данных.
• Фильтрация и редактирование данных.
• Поддержка работы как библиотека для Go, так и самостоятельного бинарника.
• Открытый исходный код – расширяйте под свои нужды!
📎 Репозиторий на GitHub
Please open Telegram to view this post
VIEW IN TELEGRAM
❤10👍7🥱4
🌐 OpenAPI + Go
OpenAPI — стандарт для описания REST API, который упрощает их документирование, тестирование и генерацию кода.
В Go OpenAPI можно интегрировать с помощью
Благодаря OpenAPI, документация всегда актуальна, а тестирование API становится проще.
➡️ Реализация и YAML-примеры
🐸 Библиотека Go разработчика
OpenAPI — стандарт для описания REST API, который упрощает их документирование, тестирование и генерацию кода.
В Go OpenAPI можно интегрировать с помощью
oapi-codegen
, автоматизируя процесс разработки.Благодаря OpenAPI, документация всегда актуальна, а тестирование API становится проще.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16🔥2
Forwarded from Proglib.academy | IT-курсы
Мы разберем, почему компании, которые массово увольняют разработчиков в пользу ИИ, рискуют остаться у разбитого корыта. Сгенерированный код не умеет исправлять баги, а инженеры, которые действительно понимают систему, становятся редкостью и роскошью.
▪️ Почему новые поколения программистов рискуют потерять ключевые навыки.
▪️ Как компании, заменившие инженеров ИИ, столкнутся с серьезными проблемами.
▪️ Почему опытные разработчики станут супердорогими и востребованными.
▪️ К чему приведет полная ставка на искусственный интеллект в IT.
🔗 Читайте статью
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9
С какой версии языка вы начинали своё погружение?
А какая версия стала для вас самой необычной в плане обновлений?
Делитесь своими мыслями в комментариях 👇
Please open Telegram to view this post
VIEW IN TELEGRAM
🌚11❤1
🛠 Техника для решения задач
Бэктрекинг (Backtracking) — это алгоритмическая техника поиска, которая перебирает возможные решения рекурсивно, откатываясь назад, если текущий путь не ведёт к успеху.
➖ Как работает бэктрекинг
1. Выбираем следующий шаг – пробуем одно из возможных решений.
2. Проверяем ограничение – если путь невозможен, откатываемся назад.
3. Продолжаем поиск – если решение найдено, фиксируем его и ищем другие варианты.
Пример кода — поиск всех перестановок строки
➖ Где используется
• Генерация перестановок и комбинаций – подбор паролей, составление расписаний.
• Задача N ферзей – расстановка фигур без угрозы друг другу.
• Поиск пути в лабиринте – навигация в сложных структурах.
• Разбор выражений и парсинг – обработка кода и регулярных выражений.
🤔 Использовали ли вы бэктрекинг в реальных проектах? Делитесь опытом в комментариях! 👇
🐸 Библиотека Go разработчика
Бэктрекинг (Backtracking) — это алгоритмическая техника поиска, которая перебирает возможные решения рекурсивно, откатываясь назад, если текущий путь не ведёт к успеху.
1. Выбираем следующий шаг – пробуем одно из возможных решений.
2. Проверяем ограничение – если путь невозможен, откатываемся назад.
3. Продолжаем поиск – если решение найдено, фиксируем его и ищем другие варианты.
Пример кода — поиск всех перестановок строки
func permute(arr []rune, l, r int) {
if l == r {
fmt.Println(string(arr))
} else {
for i := l; i <= r; i++ {
arr[l], arr[i] = arr[i], arr[l] // Обмен
permute(arr, l+1, r)
arr[l], arr[i] = arr[i], arr[l] // Откат
}
}
}
• Генерация перестановок и комбинаций – подбор паролей, составление расписаний.
• Задача N ферзей – расстановка фигур без угрозы друг другу.
• Поиск пути в лабиринте – навигация в сложных структурах.
• Разбор выражений и парсинг – обработка кода и регулярных выражений.
🤔 Использовали ли вы бэктрекинг в реальных проектах? Делитесь опытом в комментариях! 👇
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤3
Если вы Go-разработчик, то знаете, насколько утомительно останавливать и перезапускать приложение при каждом изменении кода. Существует решение этой рутины — Go Air.
Go Air — инструмент командной строки, который отслеживает изменения в вашем Go-проекте и автоматически перезапускает приложение.
1. Установка Go Air
go install github.com/cosmtrek/air@latest
2. Создание Dockerfile
3. Конфигурация .air.toml
• Директории для исключения
• Интервал опроса изменений
• Правила перестройки приложения
4. Настройка docker-compose.yml
5. Тестирование Live-Reloading
При изменении файлов Go Air автоматически перестраивает и перезапускает приложение без ручного вмешательства.
➡️ Реализация с картинками
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13👾4⚡2😁2👏1
🛠 Делимся с вами подборкой из 30 API
От погодных прогнозов до спортивной статистики — эти API станут вашим секретным оружием в мире разработки.
🐸 Библиотека Go разработчика #инфографика
От погодных прогнозов до спортивной статистики — эти API станут вашим секретным оружием в мире разработки.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥4❤2🤩1👾1
🎧 Новые математические функции в Go и обновления от Boot.dev
В последнем эпизоде подкаста Cup o' Go ведущие как всегда обсуждают актуальные события в мире Go.
Что вас ждёт в подкасте:
➖ Новые математические функции в Go: рассматривается предложение о добавлении пакета math/stats с функциями для вычисления среднего, медианы и других статистических показателей.
➖ Обновления безопасности: выпущены обновления для пакетов
➖ Интервью с Лейном Вагнером: обсуждаются последние новости Boot.dev и его подкаста Backend Banter.
➖ Блог Go: статья Майкла Пратта «Faster Go maps with Swiss Tables» о повышении производительности карт в Go.
➖ Конференции: анонс Gophercamp, который пройдет 25 апреля в Брно, Чехия.
➡️ Полный эпизод подкаста
🐸 Библиотека Go разработчика
В последнем эпизоде подкаста Cup o' Go ведущие как всегда обсуждают актуальные события в мире Go.
Что вас ждёт в подкасте:
golang.org/x/crypto
(v0.35.0) и golang.org/x/oauth2
(v0.27.0).Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤2🔥1
Наткнулись на гайд от Uber, в котором описаны внутренние правила по написанию кода на Go.
Что там интересного
Стиль Uber — это про четкость, производительность и поддержку кода в долгосрочной перспективе.
🧑💻 А какие у вас любимые best practices в Go? Делитесь в комментариях 👇
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20🔥6😁3❤1
⚙️ Минимум аллокаций в Go
🛠 Декларативная валидация данных в Go
⏳Разбираем cron-like решения
🆚 Go vs C#
🏭 WebAssembly: новые возможности в Go 1.24
💬 TCP-чат на Go
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
🛠 Инструмент для работы с торрентами на Go
mkbrr — это CLI-инструмент для создания, модификации и анализа torrent-файлов.
Что умеет mkbrr
✅ Создаёт новые torrent-файлы — минималистичный, но мощный инструмент для формирования раздач.
✅ Редактирует существующие торренты — добавляйте трекеры, изменяйте метаданные и параметры.
✅ Анализирует файлы — быстро проверяет структуру и содержимое торрентов.
📎 Репозиторий проекта
🐸 Библиотека Go разработчика #буст
mkbrr — это CLI-инструмент для создания, модификации и анализа torrent-файлов.
Что умеет mkbrr
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤1🙏1
Нашли для вас промт, который просит ИИ действовать как пост со StackOverflow. Он ответит на вопрос готовым кодом и, при необходимости, объяснит некоторые детали;
I want you to act as a stackoverflow post. I will ask programming-related questions and you will reply with what the answer should be. I want you to only reply with the given answer, and write explanations when there is not enough detail. do not write explanations. When I need to tell you something in English, I will do so by putting text inside curly brackets {like this}. My first question is "<Paste your question here>"
Вы когда-нибудь писали вопросы или ответы на StackOverflow? Или просто смотрите ответы? Делитесь в комментариях 👇
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14