Прикольно, Amazon/AWS оказывается инвестит в Rust и нанимает контрибьютеров около Rust и Tokio.
“We’re not just hiring a couple of folks for Tokio and the Rust compiler,” Miller says. “Rust is a critical component of our long-term strategy, and we’re investing to deliver Rust engineering at Amazon scale. That includes developer tools, infrastructure components, interoperability, and verification.”
Кроме Firecracker (Serverless MicroVMs) Rust еще нашел свое место в S3, EC2, R53. Что тоже прикольно. Из того что я слышал у них крайне много dpdk и прочих узких вещей, странно на самом деле удивляться уже)
https://aws.amazon.com/blogs/opensource/why-aws-loves-rust-and-how-wed-like-to-help/
“We’re not just hiring a couple of folks for Tokio and the Rust compiler,” Miller says. “Rust is a critical component of our long-term strategy, and we’re investing to deliver Rust engineering at Amazon scale. That includes developer tools, infrastructure components, interoperability, and verification.”
Кроме Firecracker (Serverless MicroVMs) Rust еще нашел свое место в S3, EC2, R53. Что тоже прикольно. Из того что я слышал у них крайне много dpdk и прочих узких вещей, странно на самом деле удивляться уже)
https://aws.amazon.com/blogs/opensource/why-aws-loves-rust-and-how-wed-like-to-help/
Amazon
Why AWS loves Rust, and how we’d like to help | Amazon Web Services
One of the most exciting things about the Rust programming language is that it makes infrastructure incredibly boring. That’s not a bad thing, in this case. No one wants their electrical wiring to be exciting; most of us prefer the safety that comes with…
oleg_log
Ого какая конфа интересная будет, люди от Hashicorp, NATS, Dgraph и PingCAP https://systemsconf.io/
Богато тут у них, прям то, что хочется слушать и рассказывать. Крутота.
We’re proud to announce the latest speaker lineup for Go Systems Conf:
9:00 AM PST - Event Kick-Off + Welcoming (arrive early for a special surprise)
9:05 AM PST - Manish Jain, Founder & CEO of Dgraph Labs
9:35 AM PST - Floating-point Number Parsing With Perfect Accuracy at a Gigabyte Per Second
Daniel Lemire, Professor & Computer Scientist at TELUQ - Université du Québec
10:10 AM PST - Serializing data in Go
Klaus Post, Senior Backend Team Lead at Minio
10:40 AM PST - Intuitive Performance
Egon Elbre, Senior Software Developer at Storj Labs
11:10 AM PST - Goroutines and Thread Safe Data Structures
Eleni Fragkiadaki, Staff Engineer, Tech Lead at Monzo Bank
11:40 AM PST - Goroutines: Under the Hood
Vicki Niu, Software Engineer at Byte
12:10 PM PST - The Dark Side of Go: Go’s Runtime Related Problems in TiDB Production Environment
Dongxu (Ed) Huang, Co-founder & CTO at PingCap
12:40 PM PST - Can We Panic Yet? Error Handling in Go
Raphael ‘kena’ Poss, Member of Technical Staff at Cockroach Labs
1:15 PM PST - Low Coordination Distributed Time Series Database - Thanos
Frederic Branczyk, Founder & CEO at Polar Signals
1:45 PM PST - White Water Rafting
Danielle Lancashire, Staff Software Engineer at VMware
2:15 PM PST - NATS All The Way Up: The Evolution of the NATS Protocol
Wally Quevedo & Jaime Piña, Software Engineer at NATS.io
2:45 PM PST - import “chaos”
Ana Margarita Medina, Senior Chaos Engineer at Gremlin
3:15 PM PST - Designing for Failure: Fault Tolerance in Distributed Systems
Verónica López, Senior Software Engineer at Digital Ocean
3:50 PM PST - Finding a Needle in Haystacks and Chaotic Systems!
Emmanuel Odeke, Founder of Orijtech
4:20 PM PST - Observability and Measurement in an Active Environment
Jesús Espino, Full Stack Engineer at Mattermost
4:50 PM PST - Taming Vault’s Tests
Nick Cabatoff, Software Developer at HashiCorp
5:30 PM PST - Group Q&A + Closing Remarks
We’re proud to announce the latest speaker lineup for Go Systems Conf:
9:00 AM PST - Event Kick-Off + Welcoming (arrive early for a special surprise)
9:05 AM PST - Manish Jain, Founder & CEO of Dgraph Labs
9:35 AM PST - Floating-point Number Parsing With Perfect Accuracy at a Gigabyte Per Second
Daniel Lemire, Professor & Computer Scientist at TELUQ - Université du Québec
10:10 AM PST - Serializing data in Go
Klaus Post, Senior Backend Team Lead at Minio
10:40 AM PST - Intuitive Performance
Egon Elbre, Senior Software Developer at Storj Labs
11:10 AM PST - Goroutines and Thread Safe Data Structures
Eleni Fragkiadaki, Staff Engineer, Tech Lead at Monzo Bank
11:40 AM PST - Goroutines: Under the Hood
Vicki Niu, Software Engineer at Byte
12:10 PM PST - The Dark Side of Go: Go’s Runtime Related Problems in TiDB Production Environment
Dongxu (Ed) Huang, Co-founder & CTO at PingCap
12:40 PM PST - Can We Panic Yet? Error Handling in Go
Raphael ‘kena’ Poss, Member of Technical Staff at Cockroach Labs
1:15 PM PST - Low Coordination Distributed Time Series Database - Thanos
Frederic Branczyk, Founder & CEO at Polar Signals
1:45 PM PST - White Water Rafting
Danielle Lancashire, Staff Software Engineer at VMware
2:15 PM PST - NATS All The Way Up: The Evolution of the NATS Protocol
Wally Quevedo & Jaime Piña, Software Engineer at NATS.io
2:45 PM PST - import “chaos”
Ana Margarita Medina, Senior Chaos Engineer at Gremlin
3:15 PM PST - Designing for Failure: Fault Tolerance in Distributed Systems
Verónica López, Senior Software Engineer at Digital Ocean
3:50 PM PST - Finding a Needle in Haystacks and Chaotic Systems!
Emmanuel Odeke, Founder of Orijtech
4:20 PM PST - Observability and Measurement in an Active Environment
Jesús Espino, Full Stack Engineer at Mattermost
4:50 PM PST - Taming Vault’s Tests
Nick Cabatoff, Software Developer at HashiCorp
5:30 PM PST - Group Q&A + Closing Remarks
у нас так неделю RabbitMQ лежал, мы ток сегодня заметили, правда никто ничего из тулинга не сказал и не намекнул (мы пре-прод, поэтому не страшно, но можете поругать и рассказать свои истории)
oleg_log
Класс, короч бот оказывается был мёртв, а я думал чего я не получил ни одного сообщ. Я хз что с ним, эти великие 2 десятка человек, что что-то написали - скопируйте и пришлите уже в родную лс @olegkovalov Спасибо :(
Я тут митапчик зачитал. Так уж вышло что появилась [citation needed] тулза, которая проверяет структуру ваших пакетов (читайте микросервисов в монорепе, да и не только).
Вот только публично она пока недоступна, полистайте слайды, там примеры конфига есть. Надеюсь звезды сойдутся счастливо и я буду рад её публишнуть в ближайшие дни, ну либо смотреть сериал Dark и наслаждаться новыми найками.
Слайды https://speakerdeck.com/olegkovalov/impguard-protect-your-project-structure
Вот только публично она пока недоступна, полистайте слайды, там примеры конфига есть. Надеюсь звезды сойдутся счастливо и я буду рад её публишнуть в ближайшие дни, ну либо смотреть сериал Dark и наслаждаться новыми найками.
Слайды https://speakerdeck.com/olegkovalov/impguard-protect-your-project-structure
Speaker Deck
impguard - protect your project structure
Классная статейка о текстовом индексе. Даж можно сказать с низкоуровневыми примерами.
Но раз это Go, то почти всегда это https://blevesearch.com/ Правда у меня последние годы складывается ощущения, что проект умирает. И скорее со стороны фич, потому что внутренности вроде как меняются.
https://habr.com/ru/company/oleg-bunin/blog/528346/
Но раз это Go, то почти всегда это https://blevesearch.com/ Правда у меня последние годы складывается ощущения, что проект умирает. И скорее со стороны фич, потому что внутренности вроде как меняются.
https://habr.com/ru/company/oleg-bunin/blog/528346/
Хабр
Полнотекстовый поиск в Couchbase Server
Дмитрий Калугин-Балашов большую часть своей жизни писал поиск: с 2011 года в компании Mail.ru был поиск по почте, затем был небольшой перерыв из-за работы в США,...
oleg_log
Классная статейка о текстовом индексе. Даж можно сказать с низкоуровневыми примерами. Но раз это Go, то почти всегда это https://blevesearch.com/ Правда у меня последние годы складывается ощущения, что проект умирает. И скорее со стороны фич, потому что внутренности…
Как по мне это красиво
https://github.com/blevesearch/bleve/blob/master/go.mod#L11
https://github.com/blevesearch/bleve/blob/master/go.mod#L11
require (
github.com/RoaringBitmap/roaring v0.4.23
github.com/blevesearch/blevex v0.0.0-20190916190636-152f0fe5c040
github.com/blevesearch/go-porterstemmer v1.0.3
github.com/blevesearch/segment v0.9.0
github.com/blevesearch/snowballstem v0.9.0
github.com/blevesearch/zap/v11 v11.0.13
github.com/blevesearch/zap/v12 v12.0.13
github.com/blevesearch/zap/v13 v13.0.5
github.com/blevesearch/zap/v14 v14.0.4
github.com/blevesearch/zap/v15 v15.0.2
GitHub
bleve/go.mod at master · blevesearch/bleve
A modern text indexing library for go. Contribute to blevesearch/bleve development by creating an account on GitHub.
Очень понравилось это репо, о том как собрать свой персональный серверочек. Красиво так по шагам, как собрать фигню без головной боли. SOPS, k3s, wireguard и всякое по мелочи.
В планах есть 1 проект и вот эта штука вполне себе пригодится. Я наверное ток packer бы добавил со своим образом виртуалки и Терраформ (хотя развитие последнего меня напрягает, как-то он сложным становится)
https://github.com/erebe/personal-server
В планах есть 1 проект и вот эта штука вполне себе пригодится. Я наверное ток packer бы добавил со своим образом виртуалки и Терраформ (хотя развитие последнего меня напрягает, как-то он сложным становится)
https://github.com/erebe/personal-server
GitHub
GitHub - erebe/personal-server: Personal server configuration with k3s
Personal server configuration with k3s. Contribute to erebe/personal-server development by creating an account on GitHub.
Russ Cox: The freeze is going well, and we are looking ahead to getting large changes ready to merge when the window opens at the start of the release, as we do for all large changes. In the compiler, we are working on two different large changes:
- register ABI work to land at the start of Go 1.17 (Feb 1 2021 work begins, Aug 1 2021 release)
- type parameters work to land at the start of Go 1.18 (Aug 1 2021 work begins, Feb 1 2022 release)
https://groups.google.com/g/golang-dev/c/U7eW9i0cqmo/m/ffs0tyIYBAAJ
https://go.googlesource.com/proposal/+/refs/heads/master/design/go2draft-type-parameters.md
- register ABI work to land at the start of Go 1.17 (Feb 1 2021 work begins, Aug 1 2021 release)
- type parameters work to land at the start of Go 1.18 (Aug 1 2021 work begins, Feb 1 2022 release)
https://groups.google.com/g/golang-dev/c/U7eW9i0cqmo/m/ffs0tyIYBAAJ
https://go.googlesource.com/proposal/+/refs/heads/master/design/go2draft-type-parameters.md
Надо ли давать экспериментальное апи вместе с обычным кодом или лучше давать в отдельной версии/ветке?
Anonymous Poll
39%
да
29%
не
32%
хз
oleg_log
Надо ли давать экспериментальное апи вместе с обычным кодом или лучше давать в отдельной версии/ветке?
Кто не уловил: "давать" подразумевается давать вот такие фции возле обычных уже провернно-рабочих:
// @experimental: bla bla
fn Foo() ...
oleg_log
Надо ли давать экспериментальное апи вместе с обычным кодом или лучше давать в отдельной версии/ветке?
Ну так уж и быть, "да" это 1й вариант, "не" это 2й и для тех кто ней уверен "хз"
oleg_log
Russ Cox: The freeze is going well, and we are looking ahead to getting large changes ready to merge when the window opens at the start of the release, as we do for all large changes. In the compiler, we are working on two different large changes: - register…
type byteseq interface {
type string, []byte
}и мне это нравится, не будет этих
[]byte("foo") и string(rawBytes) . Но меня заинтересовало другое - а что по поводу таких типовых ограничений (в дженериках) в других языках? Как-то с ходу ничего не вспомнилось :(А вот это напомнило мне интерфейс с приватным методом, соотв определить такой можно только в пакете, где интерфейс и объявлен (как вы знаете).
type ImpossibleConstraint interface {
comparable
type []int
}Только теперь такие ж штучки можно делать на уровне типов и это прикольно. Хочется придумать жизненный кейз, где это отлично зайдет (но пока не придумалось).
О, FOSDEM 2021 просыпается. Пока принятых докладов нет, но радует комнатка Zig.
Ждем 6-7 февраля значит.
https://fosdem.org/2021/schedule/tracks/
Ждем 6-7 февраля значит.
https://fosdem.org/2021/schedule/tracks/
archive.fosdem.org
FOSDEM 2021 - Tracks
oleg_log
Ах да, сегодня год блогу. Все началось с шутки Олега (к которому твой тимлид бегает за советом и олегоснователем @libmustdie). Пожалуй самое важное и полезное от блога - знакомства с новыми людьми. С другими взглядами, опытом и шутками. Спасибо, что читаете…
Да, вот и прошло 2 года с момента создания. Спасибо что читаете и комментируете. Как всегда самое интересное впереди. Понять бы куда двигаться.
А по случаю таких массовых гуляний - новый проект: @oleg_log_plus 🎉🎉🎉
Стало интересно вести патреоно-спонсируемый проект, на котором я буду делиться с вами постами, докладами и прочими видами информации, которые на мой взгляд пропускать не стоит, ведь все мы хотим быть лучшими софтвер инженерами.
Канал доступен по подписке на Патреоне https://www.patreon.com/olegkovalov (и там же детали о планах). После чего я дам вам инвайт (не забудьте указать ник в телеге)
- Повлияет ли это на основной @oleg_log в негативном ключе? конечно же нет.
- Поможет ли это ведению других проектов? (@generictalks, @good_bad_reviewer и что там еще? конечно же да.
- Приведет ли это к более сложным мемам в @profunctor_io? конечно же неизвестно.
Стало интересно вести патреоно-спонсируемый проект, на котором я буду делиться с вами постами, докладами и прочими видами информации, которые на мой взгляд пропускать не стоит, ведь все мы хотим быть лучшими софтвер инженерами.
Канал доступен по подписке на Патреоне https://www.patreon.com/olegkovalov (и там же детали о планах). После чего я дам вам инвайт (не забудьте указать ник в телеге)
- Повлияет ли это на основной @oleg_log в негативном ключе? конечно же нет.
- Поможет ли это ведению других проектов? (@generictalks, @good_bad_reviewer и что там еще? конечно же да.
- Приведет ли это к более сложным мемам в @profunctor_io? конечно же неизвестно.
Memory overall reduce from 298 GB RAM to 112 GB RAM per billion features. Average CPU utilization across all nodes dropped from 208 vCPUs to 72 vCPUs per 10 million rps.
И вообще вся статья неплохая, о том как ребятки поэтапно ускоряли свое хранилище ML-фич.
Как всегда это батчинг (они read-heavy), бинарная сериализация, хеширование и сжатие. И с этого часто стоить начать)
https://doordash.engineering/2020/11/19/building-a-gigascale-ml-feature-store-with-redis/
И вообще вся статья неплохая, о том как ребятки поэтапно ускоряли свое хранилище ML-фич.
Как всегда это батчинг (они read-heavy), бинарная сериализация, хеширование и сжатие. И с этого часто стоить начать)
https://doordash.engineering/2020/11/19/building-a-gigascale-ml-feature-store-with-redis/