📌 Мини-обзор изменений и новых возможностей:
1️⃣ Изменения в языке:
☑️ Изменения в поведении переменных в циклах
for
. Теперь каждая итерация цикла создает новые переменные, чтобы избежать ошибок совместного использования.☑️ Циклы
for
теперь могут итерировать по целым числам.2️⃣ Команда go:
☑️ В
workspaces
теперь можно использовать директорию vendor
с зависимостями.☑️ Команда
go get
больше не поддерживается в режиме GOPATH.
☑️ Изменения в
go mod init
и go test -cover
.3️⃣ Обновлен веб-интерфейс инструмента
trace.
4️⃣ Инструмент vet:
☑️ Изменения в поведении
vet
в соответствии с новой семантикой переменных цикла.☑️ Новые предупреждения для
append
и другие.5️⃣ Рантайм: улучшения производительности и снижение использования памяти.
6️⃣ Компилятор: улучшения в Profile-guided Optimization (PGO) и другие оптимизации.
7️⃣ Linker: изменения в флагах
-s/-w
и другие улучшения.8️⃣ Bootstrap: требуется последний релиз Go 1.20 или более новый для bootstrap.
9️⃣ Основная библиотека:
☑️ Новый пакет
math/rand/v2
.☑️ Новый пакет
go/version
.☑️ Улучшенные шаблоны роутинга в HTTP и многое другое.
🗒️ Примечания к выпуску
📦 Скачать
Please open Telegram to view this post
VIEW IN TELEGRAM
👍42🔥11❤1🌚1
🤩 Очередной любопытный CLI-инструмент на Go от команды ProjectDiscovery 👇
❤2
🤔 Устали сначала собирать, а потом анализировать данные о различных CVE из NVD и других критически важных источников? Команда ProjectDiscovery позаботилась об этом и представила новый инструмент cvemap.
Он предоставляет структурированный и простой в навигации CLI к различным базам данных уязвимостей, а также позволяет выполнить:
✔️ Поиск и запрос набора данных CVE
✔️ Сопоставление CVE с Known Exploited Vulnerabilities Catalog
✔️ Сопоставление CVE и Exploit Prediction Scoring System
✔️ Сопоставление CVE и Common Platform Enumeration
✔️ Сопоставление CVE с PoC'ами на GitHub
✔️ Сопоставление CVE с Nuclei Template
✔️ Сопоставление CVE с отчетами HackerOne
#news #tools #CVE
Он предоставляет структурированный и простой в навигации CLI к различным базам данных уязвимостей, а также позволяет выполнить:
✔️ Поиск и запрос набора данных CVE
✔️ Сопоставление CVE с Known Exploited Vulnerabilities Catalog
✔️ Сопоставление CVE и Exploit Prediction Scoring System
✔️ Сопоставление CVE и Common Platform Enumeration
✔️ Сопоставление CVE с PoC'ами на GitHub
✔️ Сопоставление CVE с Nuclei Template
✔️ Сопоставление CVE с отчетами HackerOne
go install github.com/projectdiscovery/cvemap/cmd/cvemap@latest
#news #tools #CVE
👍16🤔2❤1
Сравниваете ли вы свои карьерные достижения (повышение грейда) с успехами других людей?
Anonymous Poll
30%
Да — от установки «быть не хуже других» не убежишь
20%
Стараюсь не делать этого, т. к. пользы нет, а вреда достаточно
37%
Сравнений не избежать, но я стараюсь вдохновляться на действия и мотивировать себя
12%
Да, но в итоге чувствую только недовольство по отношению к другим и себе
16%
Сравниваю, но никому не завидую
10%
Сравниваю и наслаждаюсь своей крутостью
5%
Свой вариант (напишу в комментариях)
🥱18❤2🌚1
12 Factor CLI Apps.pdf
1.1 MB
Go — тот самый язык, который отлично подходит и активно используется для разработки CLI-приложений.
📌 Вот 12 аспектов, о которых стоит знать при разработке последних:
1. Качественная документация
2. Использование флагов вместо аргументов
3. Возможность легко определить версию
4. Правильное использование stdout и stderr для вывода сообщений и данных
5. Обработка ошибок
6. Использование цветов, индикаторов выполнения и прогресс-баров для улучшения UX
7. Использование подсказок для ввода данных, когда это возможно
8. Эффективное отображение данных в таблицах
9. Оптимизация времени запуска и выполнения
10. Поддержка открытого исходного кода и вовлечение сообщества
11. Четкое разделение и описание подкоманд в CLI
12. Использование стандартов XDG для хранения файлов конфигурации, данных и кэша
👉 Подробнее на Medium или в PDF
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21👏3
Начать курс «Алгоритмы и структуры данных» с вводной части можно уже сегодня
Курс для разработчиков, которые хотят подготовиться к собеседованию в технологическую компанию или продвинуться по карьерной лестнице.
🔥Начать вводные занятия можно здесь – https://proglib.io/w/b00fcfd1
На курсе вас ждет:
▪️ бессрочный доступ
▪️ 47 видеолекций
▪️ 150 практических заданий
▪️ бессрочная поддержка в чате студентов
▪️развернутая обратная связь по всем домашним заданиям
🔹Подробная программа – https://proglib.io/w/40510c9e
Переходите, оставляйте заявку на вводные занятия и знакомьтесь с самым харизматичным спикером – Степаном Мацкевичем. Он определенно получил приз зрительских симпатий от наших студентов 🥰
Курс для разработчиков, которые хотят подготовиться к собеседованию в технологическую компанию или продвинуться по карьерной лестнице.
🔥Начать вводные занятия можно здесь – https://proglib.io/w/b00fcfd1
На курсе вас ждет:
▪️ бессрочный доступ
▪️ 47 видеолекций
▪️ 150 практических заданий
▪️ бессрочная поддержка в чате студентов
▪️развернутая обратная связь по всем домашним заданиям
🔹Подробная программа – https://proglib.io/w/40510c9e
Переходите, оставляйте заявку на вводные занятия и знакомьтесь с самым харизматичным спикером – Степаном Мацкевичем. Он определенно получил приз зрительских симпатий от наших студентов 🥰
❤3👍3🔥2😁1🥱1
Matthew Boyle, автор книги Domain-Driven Design with Golang, создал мини-курс по основным изменениям в Go 1.22. Врывайтесь👇
👨💻 Смотреть
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥16🌚1
🍋 Подборка лучших статей «Библиотеки программиста» за январь: сохраняй в заметки, чтобы не пропустить #самыйсок
🏖️ Чек лист идеального отдыха: 5 психологических техник расслабления
👨💻 Особенности работы в ИТ: информация из первых рук
🏖️ Синдром упущенного отпуска: почему так опасно игнорировать заслуженный отдых
🤖 Итоги недели в мире ИИ и обзоры новых сервисов: новые модели для генерации впечатляющих видео
💰⬆️ 10 факторов, влияющих на зарплату программиста
👨💻🧩 Психология и ИТ: 17 личностных качеств, необходимых для успешной карьеры
🏃 Самоучитель по Go для начинающих:
👉 Часть 5. Условные конструкции if-else и switch-case. Цикл for. Вложенные и бесконечные циклы
👉 Часть 6. Функции и аргументы. Области видимости. Рекурсия. Defer
🏖️ Чек лист идеального отдыха: 5 психологических техник расслабления
👨💻 Особенности работы в ИТ: информация из первых рук
🏖️ Синдром упущенного отпуска: почему так опасно игнорировать заслуженный отдых
🤖 Итоги недели в мире ИИ и обзоры новых сервисов: новые модели для генерации впечатляющих видео
💰⬆️ 10 факторов, влияющих на зарплату программиста
👨💻🧩 Психология и ИТ: 17 личностных качеств, необходимых для успешной карьеры
🏃 Самоучитель по Go для начинающих:
👉 Часть 5. Условные конструкции if-else и switch-case. Цикл for. Вложенные и бесконечные циклы
👉 Часть 6. Функции и аргументы. Области видимости. Рекурсия. Defer
🥰3👍2🌚1
🔐 Filippo Valsorda, эксперт по криптографии и бывший член команды Go, делится подробностями разработки библиотеки mlkem768
🛠 mlkem768 — это реализация ML-KEM-768 на чистом Go + sha3. ML-KEM представляет собой механизм обмена ключами постквантовой криптографии, который в настоящее время стандартизируется NIST.
📺 И да, Filippo написал часть библиотеки в прямом эфире. Тоже можно посмотреть😎
🛠 mlkem768 — это реализация ML-KEM-768 на чистом Go + sha3. ML-KEM представляет собой механизм обмена ключами постквантовой криптографии, который в настоящее время стандартизируется NIST.
📺 И да, Filippo написал часть библиотеки в прямом эфире. Тоже можно посмотреть
Please open Telegram to view this post
VIEW IN TELEGRAM
Filippo Valsorda
Post-quantum Cryptography for the Go Ecosystem
filippo.io/mlkem768 is a pure-Go implementation of the post-quantum key exchange mechanism ML-KEM-768 optimized for correctness and readability.
❤5👍3
🥇 Спортивная мотивация и мотивация в IT, что общего?
Рассказываем, как использовать психологические инструменты из спорта, чтобы увеличить внутреннюю мотивацию и повысить продуктивность.
👉 Читать статью
👉 Зеркало
Рассказываем, как использовать психологические инструменты из спорта, чтобы увеличить внутреннюю мотивацию и повысить продуктивность.
👉 Читать статью
👉 Зеркало
👍10🔥4🥱2❤1
Инженер из Google Valentin Deleplace делится историей повышения производительности Go-сервиса с помощью double-checked locking (второй скрин).
👉 Читать
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤4🌚1
📌 Есть три ключевых правила работы с контекстом:
1️⃣ Только функции entry point должны создавать новый контекст, например, используя
context.Background()
2️⃣ Контекст передается только вниз по цепочке вызовов
3️⃣ Не следует хранить контекст в структурах или использовать его после возврата функции
Первые два относительно просты, а вот третье стало причиной написания статьи.
👉 Читать
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21❤1🤔1🥱1
⚒️ Jaegar + Open Telemetry в действии: простой пример для Go-разработчика
📌 Пример файла Docker Compose для запуска Jaeger:
📌 Пример минимального Go-приложения для демонстрации интеграции Open Telemetry:
👉 Источник
#tip
📌 Пример файла Docker Compose для запуска Jaeger:
version: '3'
services:
jaeger:
image: jaegertracing/all-in-one:latest
ports:
- "16686:16686" # UI
- "14268:14268" # Collector
- "14250:14250" # gRPC
- "9411:9411" # Zipkin
📌 Пример минимального Go-приложения для демонстрации интеграции Open Telemetry:
package main
import (
"context"
"go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp"
"go.opentelemetry.io/otel"
"go.opentelemetry.io/otel/exporters/jaeger"
"go.opentelemetry.io/otel/sdk/resource"
"go.opentelemetry.io/otel/sdk/trace"
semconv "go.opentelemetry.io/otel/semconv/v1.7.0"
"log"
"math/rand"
"net/http"
"time"
)
func main() {
// Initialize Jaeger Exporter
exporter, err := jaeger.New(jaeger.WithCollectorEndpoint())
if err != nil {
log.Fatal(err)
}
// Create Trace Provider
tp := trace.NewTracerProvider(
trace.WithBatcher(exporter),
trace.WithResource(resource.NewWithAttributes(
semconv.SchemaURL,
semconv.ServiceNameKey.String("app-one"),
)),
)
otel.SetTracerProvider(tp)
http.Handle("/", otelhttp.NewHandler(http.HandlerFunc(SimpleHandler), "Hello"))
log.Fatal(http.ListenAndServe(":8081", nil))
}
func SimpleHandler(w http.ResponseWriter, r *http.Request) {
_, _ = w.Write([]byte("Hello, World!"))
}
👉 Источник
#tip
👍19❤8🥱1
Почти шесть лет назад Мэт написал пост на такую же тему, который стал вирусным и значительно повлиял на его взгляды относительно этой темы.
📌 В новом материале Мэт рассматривает ряд тем, связанных с созданием сервисов на Go, в том числе:
☑️ Структурирование серверов и обработчиков для максимального удобства сопровождения
☑️ Советы и рекомендации по оптимизации для быстрого запуска и graceful shutdown
☑️ Как выполнять общую работу, применимую ко многим типам запросов
☑️ Как правильно тестировать сервисы
Please open Telegram to view this post
VIEW IN TELEGRAM
Grafana Labs
How I write HTTP services in Go after 13 years | Grafana Labs
Mat Ryer, principal engineer at Grafana Labs and host of the Go Time podcast, shares what he's learned from more than a dozen years of writing HTTP services in Go.
🔥13❤3👍2
Forwarded from Библиотека программиста | программирование, кодинг, разработка
🤔 Как нестандартно войти в АйТи
Многие IT-специалисты приходят в эту сферу нестандартным путем — кто-то начинал как самоучка, а кто-то стал программистом случайно. Был ли у вас необычный старт карьеры в IT?
Расскажите нам свою историю! Ваш опыт может вдохновить тех, кто мечтает о переменах, но пока не решается начать.
❤️ С нетерпением ждем ваших комментариев!
Многие IT-специалисты приходят в эту сферу нестандартным путем — кто-то начинал как самоучка, а кто-то стал программистом случайно. Был ли у вас необычный старт карьеры в IT?
Расскажите нам свою историю! Ваш опыт может вдохновить тех, кто мечтает о переменах, но пока не решается начать.
❤️ С нетерпением ждем ваших комментариев!
🥱8👍5🌚1
Самые полезные каналы для программистов в одной подборке!
Сохраняйте себе, чтобы не потерять 💾
🔥Для всех
Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы
Proglib Academy — тут мы рассказываем про обучение и курсы
#️⃣C#
Книги для шарпистов | C#, .NET, F#
Библиотека шарписта — полезные статьи, новости и обучающие материалы по C#
Библиотека задач по C# — код, квизы и тесты
Библиотека собеса по C# — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Вакансии по C#, .NET, Unity Вакансии по PHP, Symfony, Laravel
☁️DevOps
Библиотека devops’а — полезные статьи, новости и обучающие материалы по DevOps
Вакансии по DevOps & SRE
Библиотека задач по DevOps — код, квизы и тесты
Библиотека собеса по DevOps — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
🐘PHP
Библиотека пхпшника — полезные статьи, новости и обучающие материалы по PHP
Вакансии по PHP, Symfony, Laravel
Библиотека PHP для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по PHP — код, квизы и тесты
🐍Python
Библиотека питониста — полезные статьи, новости и обучающие материалы по Python
Вакансии по питону, Django, Flask
Библиотека Python для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Python — код, квизы и тесты
☕Java
Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков
👾Data Science
Книги для дата сайентистов | Data Science
Библиотека Data Science — полезные статьи, новости и обучающие материалы по Data Science
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту
🦫Go
Книги для Go разработчиков
Библиотека Go разработчика — полезные статьи, новости и обучающие материалы по Go
Библиотека Go для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Go — код, квизы и тесты
Вакансии по Go
🧠C++
Книги для C/C++ разработчиков
Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++
💻Другие профильные каналы
Библиотека фронтендера
Библиотека мобильного разработчика
Библиотека хакера
Библиотека тестировщика
💼Каналы с вакансиями
Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности
📁Чтобы добавить папку с нашими каналами, нажмите 👉сюда👈
🤖Также у нас есть боты:
Бот с IT-вакансиями
Бот с мероприятиями в сфере IT
Мы в других соцсетях:
🔸VK
🔸YouTube
🔸Дзен
🔸Facebook *
🔸Instagram *
* Организация Meta запрещена на территории РФ
Сохраняйте себе, чтобы не потерять 💾
🔥Для всех
Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы
Proglib Academy — тут мы рассказываем про обучение и курсы
#️⃣C#
Книги для шарпистов | C#, .NET, F#
Библиотека шарписта — полезные статьи, новости и обучающие материалы по C#
Библиотека задач по C# — код, квизы и тесты
Библиотека собеса по C# — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Вакансии по C#, .NET, Unity Вакансии по PHP, Symfony, Laravel
☁️DevOps
Библиотека devops’а — полезные статьи, новости и обучающие материалы по DevOps
Вакансии по DevOps & SRE
Библиотека задач по DevOps — код, квизы и тесты
Библиотека собеса по DevOps — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
🐘PHP
Библиотека пхпшника — полезные статьи, новости и обучающие материалы по PHP
Вакансии по PHP, Symfony, Laravel
Библиотека PHP для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по PHP — код, квизы и тесты
🐍Python
Библиотека питониста — полезные статьи, новости и обучающие материалы по Python
Вакансии по питону, Django, Flask
Библиотека Python для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Python — код, квизы и тесты
☕Java
Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков
👾Data Science
Книги для дата сайентистов | Data Science
Библиотека Data Science — полезные статьи, новости и обучающие материалы по Data Science
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту
🦫Go
Книги для Go разработчиков
Библиотека Go разработчика — полезные статьи, новости и обучающие материалы по Go
Библиотека Go для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Go — код, квизы и тесты
Вакансии по Go
🧠C++
Книги для C/C++ разработчиков
Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++
💻Другие профильные каналы
Библиотека фронтендера
Библиотека мобильного разработчика
Библиотека хакера
Библиотека тестировщика
💼Каналы с вакансиями
Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности
📁Чтобы добавить папку с нашими каналами, нажмите 👉сюда👈
🤖Также у нас есть боты:
Бот с IT-вакансиями
Бот с мероприятиями в сфере IT
Мы в других соцсетях:
🔸VK
🔸YouTube
🔸Дзен
🔸Facebook *
🔸Instagram *
* Организация Meta запрещена на территории РФ
👍1
Forwarded from Библиотека джависта | Java, Spring, Maven, Hibernate
🎮👨💻 15 игр, которые научат программированию
А также помогут подготовиться к техническому собеседованию, развить алгоритмическое мышление и просто провести свободное время с пользой.
Читать статью
А также помогут подготовиться к техническому собеседованию, развить алгоритмическое мышление и просто провести свободное время с пользой.
Читать статью
👍6❤2
☑️ Легко расширяем
☑️ Совместим с CommonMark
☑️ Имеет хорошо структурированную архитектуру
import (
"bytes"
"github.com/yuin/goldmark"
"github.com/yuin/goldmark/extension"
"github.com/yuin/goldmark/parser"
"github.com/yuin/goldmark/renderer/html"
)
md := goldmark.New(
goldmark.WithExtensions(extension.GFM),
goldmark.WithParserOptions(
parser.WithAutoHeadingID(),
),
goldmark.WithRendererOptions(
html.WithHardWraps(),
html.WithXHTML(),
),
)
var buf bytes.Buffer
if err := md.Convert(source, &buf); err != nil {
panic(err)
}
👉 GitHub
👉 Goldmark playground
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - yuin/goldmark: :trophy: A markdown parser written in Go. Easy to extend, standard(CommonMark) compliant, well structured.
:trophy: A markdown parser written in Go. Easy to extend, standard(CommonMark) compliant, well structured. - yuin/goldmark
👍8❤4
Вы работаете в команде мидл-разработчиком, но уже давно чувствуете, что знаний у вас гораздо больше, чем у сеньора в команде. Ваши действия:
Anonymous Poll
17%
Свалю из такой команды
48%
Поговорю с тимлидом и попрошу пересмотреть грейды
1%
Смирюсь
12%
Забью и сделаю фокус на личном развитии
0%
Свой вариант (напишу в комментариях)
21%
Посмотреть результаты
🥱10❤2
Forwarded from Библиотека дата-сайентиста | Data Science, Machine learning, анализ данных, машинное обучение
🧑🏻🏫 Менторство в IT: как стать айтишником, найти работу мечты и облегчить себе жизнь
Как вкатиться в IT и найти работу с помощью ментора? Чем могут помочь наставники и с какими запросами к ним приходят? А главное — где найти хорошего специалиста?
👉 Рассказываем обо всём в новой статье 👈
🔗 Зеркало
Как вкатиться в IT и найти работу с помощью ментора? Чем могут помочь наставники и с какими запросами к ним приходят? А главное — где найти хорошего специалиста?
👉 Рассказываем обо всём в новой статье 👈
🔗 Зеркало
👍6