Чистил зубы и подумал: сколько было пользователей на пике у ICQ?
Любимая Вики говорит: At its peak around 2001, ICQ had more than 100 million accounts registered.
https://en.wikipedia.org/wiki/ICQ
Телеграм в наше время вроде как 500М взял уже (либо оч близко к отметке).
Встречная мысль: интересно, на сколько сложнее было поддерживать такой масштаб платформы 19(!) лет назад? ни толком мониторингов, ни SRE со всеми этими антиблеймами, та даже AWS считайте не было.
Самое ужасное - спросить не у кого. Вот где кузница опыта была. *горький всплак псевдо-деда*
Любимая Вики говорит: At its peak around 2001, ICQ had more than 100 million accounts registered.
https://en.wikipedia.org/wiki/ICQ
Телеграм в наше время вроде как 500М взял уже (либо оч близко к отметке).
Встречная мысль: интересно, на сколько сложнее было поддерживать такой масштаб платформы 19(!) лет назад? ни толком мониторингов, ни SRE со всеми этими антиблеймами, та даже AWS считайте не было.
Самое ужасное - спросить не у кого. Вот где кузница опыта была. *горький всплак псевдо-деда*
За баталиями в твиторе и около следите?
Anonymous Poll
21%
Да, слежу
35%
Не, умнее
44%
Хз о чем речь
Лел, оказывается кто-то форкнул GopherJS и завёз туда поддержку 1.12-15 (хотя оригинальный проект может и тоже работал, не пруфну) и видно собирается взвалить груз ответственности и вести проект дальше.
https://github.com/goplusjs/gopherjs
https://github.com/goplusjs/gopherjs
GitHub
GitHub - goplusjs/gopherjs: A compiler from Go to JavaScript
A compiler from Go to JavaScript. Contribute to goplusjs/gopherjs development by creating an account on GitHub.
Вот интересно стало, GopherJS...
Anonymous Poll
27%
Знал(а) о таком
67%
1й раз слышу
1%
Использую даж
5%
Другое
Starting with v8.8, V8 ships with a new experimental non-backtracking RegExp engine (in addition to the existing Irregexp engine) which guarantees execution in linear time with respect to the size of the subject string.
https://v8.dev/blog/non-backtracking-regexp
https://v8.dev/blog/non-backtracking-regexp
v8.dev
An additional non-backtracking RegExp engine · V8
V8 now has an additional RegExp engine that serves as a fallback and prevents many instances of catastrophic backtracking.
Опять дженерики https://blog.golang.org/generics-proposal
Теперь уже официальный (опять?) пропозал https://github.com/golang/go/issues/43651
Ну и док пропозала https://go.googlesource.com/proposal/+/refs/heads/master/design/go2draft-type-parameters.md
Теперь уже официальный (опять?) пропозал https://github.com/golang/go/issues/43651
Ну и док пропозала https://go.googlesource.com/proposal/+/refs/heads/master/design/go2draft-type-parameters.md
go.dev
A Proposal for Adding Generics to Go - The Go Programming Language
Generics is entering the language change proposal process
Finished dev [unoptimized + debuginfo] target(s) in 15m 21sСобрал я тут тестовое задание на Rust. Теперь можно и посмореть, работает ли.
Я конечно понимаю и уважаю, но ноут придётся заливать водой, он уже 2 минуты продолжает шуметь после компиляции.
Считайте набросом, ватевер.
Иду собесить другого человека (не связанного с постом выше). Что будем-с спрашивать?
Давайте вы поумничаете, а я человека помучаю. :D
А если серьезно, что по вашем было бы важно спросить и до какой глубины копать?
Тестовое было написано хорошо, но не топово. Опыт пару лет, раньше была Java & Groovy, последний год - Go. Что-то там в кубами еще делал.
Давайте вы поумничаете, а я человека помучаю. :D
А если серьезно, что по вашем было бы важно спросить и до какой глубины копать?
Тестовое было написано хорошо, но не топово. Опыт пару лет, раньше была Java & Groovy, последний год - Go. Что-то там в кубами еще делал.
Automated Symbolic Verification of
Telegram’s MTProto 2.0
Within this model, we have provided a
fully automated proof of the soundness of MTProto 2.0’s protocols for first authentication,
normal chat, end-to-end encrypted chat, and re-keying mechanisms with respect to several
security properties, including authentication, integrity, confidentiality and perfect forward
secrecy. These properties are verified also in presence of malicious servers. Our formalization
covers also the behaviour of the users, when relevant; for instance, we have proved that if
the users do not check the fingerprints of their shared keys, a MITM attack is possible.
In the light of these results, we can affirm that MTProto 2.0 does not present any logical
flaw. Vulnerabilities can arise only from the cryptographic primitives, from implementation
flaws (e.g. insufficient checks), from side-channels exfiltration (such as timing or traffic
analysis), or from incorrect user behaviour.
https://arxiv.org/pdf/2012.03141v1.pdf
Telegram’s MTProto 2.0
Within this model, we have provided a
fully automated proof of the soundness of MTProto 2.0’s protocols for first authentication,
normal chat, end-to-end encrypted chat, and re-keying mechanisms with respect to several
security properties, including authentication, integrity, confidentiality and perfect forward
secrecy. These properties are verified also in presence of malicious servers. Our formalization
covers also the behaviour of the users, when relevant; for instance, we have proved that if
the users do not check the fingerprints of their shared keys, a MITM attack is possible.
In the light of these results, we can affirm that MTProto 2.0 does not present any logical
flaw. Vulnerabilities can arise only from the cryptographic primitives, from implementation
flaws (e.g. insufficient checks), from side-channels exfiltration (such as timing or traffic
analysis), or from incorrect user behaviour.
https://arxiv.org/pdf/2012.03141v1.pdf
Когда стартап мутят чуваки, которые любят пилить велосипеды, то всегда можно почитать веселые вещи.
- “So, what database do you use? MySQL, PostgreSQL, SQLite maybe?”, knowing that he loved SQLite.
- “A text file," he replied.
- “Huh?”
- “Yeah, we write out one big JSON object to a text file.”
- “How? When? What?”
Если по теме, они сделали кеширующий клиент для etcd и ловят апдейты на watch-ах. https://github.com/tailscale/tailetc (если так подумать, то напоминает планы Антиреза по Redis и кешированию на стороне клиента (ну а как еще улучшать производительность, когда все дешевые фиксы уже закомичены?))
https://tailscale.com/blog/an-unlikely-database-migration/
- “So, what database do you use? MySQL, PostgreSQL, SQLite maybe?”, knowing that he loved SQLite.
- “A text file," he replied.
- “Huh?”
- “Yeah, we write out one big JSON object to a text file.”
- “How? When? What?”
Если по теме, они сделали кеширующий клиент для etcd и ловят апдейты на watch-ах. https://github.com/tailscale/tailetc (если так подумать, то напоминает планы Антиреза по Redis и кешированию на стороне клиента (ну а как еще улучшать производительность, когда все дешевые фиксы уже закомичены?))
https://tailscale.com/blog/an-unlikely-database-migration/
GitHub
GitHub - tailscale/tailetc: total-memory-cache etcd v3 client
total-memory-cache etcd v3 client. Contribute to tailscale/tailetc development by creating an account on GitHub.
oleg_log
Пришла пора хвастаться. Загрузчик конфига для Go aconfig дорос до v0.10.0 - умеем читать дефолты, файлы, енв и флаги - умеем читать файлы JSON, YAML, TOML - для этих форматов еще и теги полей структуры генерим - зависимости на форматы файлов опциональны (дада…
HCL приехал, достаточно в конфиге лоадера указать
Фидбек приветствуется
".hcl": aconfighcl.New()
https://github.com/cristalhq/aconfig v0.10.1 #hqФидбек приветствуется
GitHub
GitHub - cristalhq/aconfig: Simple, useful and opinionated config loader.
Simple, useful and opinionated config loader. Contribute to cristalhq/aconfig development by creating an account on GitHub.
Ого, всего лишь 3 года прошло с надежды на релиз го тулзы для проверки зависимостей от Digitalocean
репо https://github.com/digitalocean/gta
пост https://www.digitalocean.com/blog/gta-detecting-affected-dependent-go-packages/
мой комент https://news.ycombinator.com/item?id=15633809
репо https://github.com/digitalocean/gta
пост https://www.digitalocean.com/blog/gta-detecting-affected-dependent-go-packages/
мой комент https://news.ycombinator.com/item?id=15633809
GitHub
GitHub - digitalocean/gta: gta: do transitive analysis to find packages whose dependencies have changed
gta: do transitive analysis to find packages whose dependencies have changed - digitalocean/gta