How to Go wrong
LIBERTY LIBERTY LIBERTY, или о пользе Minimal Version Selection и Go Module Proxy https://www.bleepingcomputer.com/news/security/dev-corrupts-npm-libs-colors-and-faker-breaking-thousands-of-apps/
Reuters
New York man arrested after apartment fire; explosive materials found
A New York City man was arrested early on Wednesday after he was injured in a fire at his apartment, where authorities later found chemicals that could be used to make bombs and instructions on how to make them, police said.
👍3😱2
Последние несколько недель в части интернета не прекращается дискуссия, косвенно связанная с новостями выше: как зарабатывать / нужно ли платить за open source. Хотел поделиться с вами постом, которые очень чётко отражает мою позицию и как мейнтейнера, и как CTO open source startup’а, и как автора канальчика в Telegram:
https://apenwarr.ca/log/20211229
(Если сравнение с коммунизмом вызывает у вас рвотные рефлексы, то можно эту часть пропустить без больших потерь)
https://apenwarr.ca/log/20211229
(Если сравнение с коммунизмом вызывает у вас рвотные рефлексы, то можно эту часть пропустить без больших потерь)
apenwarr.ca
The Gift of It's Your Problem Now
Recently a security hole in a certain open source Java library resulted in a worldwide emergency kerfuffle as, say, 40% of the possibly hund...
👍3
Forwarded from oleg_log (Oleg Kovalov)
The right path forward for NPM and package managers like it is to stop preferring the latest possible version of all dependencies when installing a new package. Instead, they should prefer to use the dependency versions that the package was actually tested with, or versions as close as possible to those. I call that a high-fidelity build.
https://research.swtch.com/npm-colors
https://research.swtch.com/npm-colors
👍5
Через несколько часов (в 19 UTC+1, 21 MSK) буду рассказывать про FerretDB, generic’и и fuzzing. Если слайды успею доделать.
UPD: доделал за 20 минут до начала.
UPD: доделал за 20 минут до начала.
Meetup
Вход в Meetup | Meetup
Ещё не участник Meetup? Войдите в систему и найдите группы, которые проводят онлайн или офлайн мероприятия и встречайтесь с людьми в вашем регионе, которые разделяют ваши интересы.
Несколько дней назад вместе со всеми угорал над Object, Object, Object, […], а сегодня для доклада написал такое:
func MakeDocument3[T1, T2, T3 BSONType](key1 string, value1 T1, key2 string, value2 T2, key3 string, value3 T3) *Document
😱5👍2
Мой стартап, FerretDB Inc., нашёл денег и нанимает двух senior разработчиков на Go, чтобы вместе со мной писать FerretDB: полный remote, open source, $$$. Формальное описание вакансии у нас на сайте и в Go Get a Job.
Неформально хочу сказать, что пока ищу людей не только сильных технически, но и близких по культуре и опыту. Очень не хотелось бы сейчас тратить время на непродуктивные и плохо аргументированные споры про чистую архитектуру и предметно-ориентированное проектирование.
Как предложить себя написано на сайте. В комментариях можно задать вопросы. Флудить лучше в Go Get a Job. В личку просьба не писать – ответы на общие вопросы будут интересны и другим людям.
Неформально хочу сказать, что пока ищу людей не только сильных технически, но и близких по культуре и опыту. Очень не хотелось бы сейчас тратить время на непродуктивные и плохо аргументированные споры про чистую архитектуру и предметно-ориентированное проектирование.
Как предложить себя написано на сайте. В комментариях можно задать вопросы. Флудить лучше в Go Get a Job. В личку просьба не писать – ответы на общие вопросы будут интересны и другим людям.
👍30🎉11
Я не подался/подалась на вакансию, потому что…
(множественный выбор)
(множественный выбор)
Anonymous Poll
19%
Мало денег для меня
32%
Не хочу уходить с текущей работы
49%
Нет стольких лет опыта c Go
15%
Не подхожу под другое требование
40%
Не считаю себя senior
15%
Чего-то боюсь
5%
Нипочему, скоро подамся
👍1
How to Go wrong
Я не подался/подалась на вакансию, потому что…
(множественный выбор)
(множественный выбор)
Короткое обновление для 50%, испугавшихся 5+ лет опыта на Go – теперь мы просим только 3+.
В принципе, если вы не уверены, что senior, но уж точно middle – подавайтесь, пообщаемся. 🙂
Завтра подробнее напишу как и почему так решили.
P.S. Подалось меньше, чем 17 человек, проголосовавших за последний пункт. Давайте-давайте, вакансия не вечная 🙂
В принципе, если вы не уверены, что senior, но уж точно middle – подавайтесь, пообщаемся. 🙂
Завтра подробнее напишу как и почему так решили.
P.S. Подалось меньше, чем 17 человек, проголосовавших за последний пункт. Давайте-давайте, вакансия не вечная 🙂
Dgraph — всё.
(много мыслей про open source стартапы и потерю контроля при привлечении инвестиций)
Update: 🔥 в комментариях на Hacker News.
(много мыслей про open source стартапы и потерю контроля при привлечении инвестиций)
Update: 🔥 в комментариях на Hacker News.
😢6👍1
При всех минусах онлайн-митапов, у них есть и плюсы. Один из них – возможность выступить на двух в один день, прямо как Фил Коллинз на Live Aid. Вот и я буду выступать в субботу сначала в виртуальной Казани (на русском), а потом в виртуальном Брюсселе на FOSDEM (на английском).
Из менее хороших новостей, в процессе подготовки сейчас нашёл баг в фаззинге.
Из менее хороших новостей, в процессе подготовки сейчас нашёл баг в фаззинге.
😱6🔥4👍3❤2
Тут конференция HighLoad++ объявила накрутку голосование за лучшие Open Source-решения, победители которого выступят с короткими докладами. В настоящий момент у самого накрученного лучшего проекта 117 голосов. Давайте накрутим проголосуем за FerretDB, чтобы на конференции было ещё больше нашего любимого Go и любимой базы данных.
https://opensource.highload.ru/vote
https://opensource.highload.ru/vote
👍14👎1
How to Go wrong
GitHub документирует проблемы своего собственного UX. Это прекрасно. https://docs.github.com/en/packages/guides/pushing-and-pulling-docker-images#authenticating-to-github-container-registry
Нашёл почти такое же прекрасное:
Types of status checks on GitHub
There are two types of status checks on GitHub:
• Checks
• Statuses
https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/about-status-checks#types-of-status-checks-on-github
Правду говорят, что придумывание названий – одна из двух самых сложных вещей в программировании.
Types of status checks on GitHub
There are two types of status checks on GitHub:
• Checks
• Statuses
https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/about-status-checks#types-of-status-checks-on-github
Правду говорят, что придумывание названий – одна из двух самых сложных вещей в программировании.
GitHub Docs
About status checks - GitHub Docs
Status checks let you know if your commits meet the conditions set for the repository you're contributing to.
Что мы узнали из этого тикета:
1. Роб и Расс использую Маки.
2. Apple уже не торт.
3. Авторы
1. Роб и Расс использую Маки.
2. Apple уже не торт.
3. Авторы
go env
не знают что в нём тормозит.GitHub
cmd/go: 'go env' takes 5+ seconds on my Mac · Issue #50982 · golang/go
I don't know why, but 'go env' regularly takes 5+ seconds on my MacBook Pro, and it's really annoying. A second 'go env' shortly thereafter is quick....
Forwarded from 4gophers
GoAWK теперь использует виртуальную машину и интерпретатор байт кода вместо обхода дерева исходного кода. Выигрыш по производительности составил около 13%.
А ещё благодаря этому проекту автор устроится работать в Canonical.
В общем любителям компиляторов и ЯП а так-же любителям оптимизаций и просто Open-source - must read.
https://benhoyt.com/writings/goawk-compiler-vm/
А ещё благодаря этому проекту автор устроится работать в Canonical.
В общем любителям компиляторов и ЯП а так-же любителям оптимизаций и просто Open-source - must read.
https://benhoyt.com/writings/goawk-compiler-vm/
Benhoyt
Optimizing GoAWK with a bytecode compiler and virtual machine
How I sped up GoAWK by switching from a tree-walking interpreter to a bytecode compiler and virtual machine interpreter.
Автор предыдущей статьи написал любопытное продолжение: сравнение скорости и размера бинарника по версиям Go. И с первым, и со вторым (что немного удивительно) всё становится лучше с каждой версией.
Benhoyt
Go performance from version 1.2 to 1.18
Shows how much the performance of Go has improved from version 1.2 through to 1.18 -- in its compiler, runtime, and libraries.