Size: a a a

2021 October 29
oleg_log
источник
oleg_log
По поводу успеха: просто оставьте squash merging и будет вам красивая линейная история.

1й даст проблемы выше (и много других), 3й понадобится пару раз в году (можно зайти включить, смержить, выключить).
источник
oleg_log
Вопрос основанный на коментах к посту выше: всегда ли можно разделить большую фичу на несколько ПР ? (под ПР подразумеваем 1 сквошнутый коммит)
Анонимный опрос
39%
да
41%
не
20%
результаты
Проголосовало: 700
источник
2021 October 30
oleg_log
crypto/elliptic: use generics for nistec-based curves

Mostly an experiment to see if generics would help. I'd say they do!

https://go-review.googlesource.com/c/go/+/360015

Хотя это больше PoC чем реальное изменение, тот же упомянутый escape.
источник
oleg_log
Месяц назад была конфа p99 conf, тип о всяком быстро и производительном (спасибо ScyllaDB), некоторые интересные вещи я закину в @oleg_fov

Но вот 1 доклад особенно запал в сердце (см след пост). Очень крутое введение начиная с Moore's Law известное каждому, но вот Wright’s Law не такой популярный (ток в ит?).

(не путать с Wirth Law (software is getting slower more rapidly than hardware is becoming faster))

Если кратко: с ростом некого производства, падает цена производства (за счет оптимизаций процессов и прочего).

Что на самом деле круто и подсказывает, что софт и так будет становиться быстрее, за счёт фиксов в рантайм, компилятор и более оптимальных либ, просто потому, что больше людей будет это юзать и больше людей будут что-то улучшать(я тут пытался перефразировать Линуса, что с достаточным колвом глаз все баги видны). Звучит чуть розово-приятно, но, как для меня, факт.

JVM & dotNet отличные примеры этого из списка языков и даже экосистем.

Правда докладчик с 18й минуты сливается в проповедь no_std в Rust и кайф от доклада сливается в -0 (советую его на 2х смотреть,  average fan получается, особенно с учетом языка, хехе).
источник
oleg_log
источник
2021 October 31
oleg_log
источник
oleg_log
true
источник
oleg_log
источник
2021 November 01
oleg_log
Возвращаясь к спору про ПР выше. Вы используете feature flags в проектах? Это когда вы что-то вмержили в мейн, но не используете сразу, но код как бы уже смешался со всем.
Анонимный опрос
56%
да
31%
не
13%
хз
Проголосовало: 743
источник
oleg_log
Unicode должен быть запрещен в коде на законодательном уровне.

https://blog.rust-lang.org/2021/11/01/cve-2021-42574.html

Тут больше каких-то слов https://krebsonsecurity.com/2021/11/trojan-source-bug-threatens-the-security-of-all-code/

> We’ve verified that this attack works against C, C++, C#, JavaScript, Java, Rust, Go, and Python

https://www.lightbluetouchpaper.org/2021/11/01/trojan-source-invisible-vulnerabilities/

Paper: https://trojansource.codes/trojan-source.pdf
источник
oleg_log
Рассказал, как мы тестируем Tarantool
https://habr.com/ru/company/vk/blog/584864/
источник
oleg_log
источник
2021 November 02
oleg_log
Твой Github Copilot так может? то-то же

Кто деда не узнал https://t.me/oleg_log/4965
источник
oleg_log
Russ Cox накинул в ответ https://research.swtch.com/trojan via @HowToGoWrong

Видно в четверг будет стрим по go-critic с новыми чеками, хотя это не связано с новостью.
источник
oleg_log
Если кому-то пофиг на всё это (правильно делаете), то вот забавная история из последнего абзаца:

For the record, back in 2013, Ken told me that the backdoored compiler did in fact exist and was deployed, but it had a subtle bug that exposed the backdoor: the reproduction code added an extra \0 to the string each time it copied itself. This made the compiler binary grow by one byte every time it rebuilt itself. Eventually someone noticed and debugged what was going on, aided by the fact that the “print assembly” compilation mode did not insert the backdoor at all, and all traces were cleaned away. Or so we believe.
источник
oleg_log
Rudra не совсем и новая вещь (в августе 1й раз встретил), но вещь стоящая судя по количеству найденных багов, unsafe такой unsafe.

https://www.micahlerner.com/2021/10/31/rudra-finding-memory-safety-bugs-in-rust-at-the-ecosystem-scale.html
источник
2021 November 03
oleg_log
This page collects issues that have been discovered using Go's native fuzzing.

https://github.com/golang/go/wiki/Fuzzing-trophy-case

Все бы ничего, но...
Standard Library
go/scanner: inconsistent handling of NUL bytes in 1.17
time: ParseDuration can panic on invalid input

Что еще раз подтверждает - фаззинг это надолго.
источник
oleg_log
Google's infamous internal 2010 “I just want to serve 5TB” video now public

https://www.youtube.com/watch?v=3t6L-FlfeaI

Чуть контекста https://rachelbythebay.com/w/2021/10/30/5tb/

> As for everything in the video, it is really close to what the reality of production was back in the day. Things were actually quite a bit worse than what it suggests, if you can believe it. The whole thing about "get quota in two cells" misses the fact that it was damn near impossible to get the quota you needed across multiple services (compute, storage, ...) in the same place at the same time.

+ MongoDB is web scale https://www.youtube.com/watch?v=b2F-DItXtZs
источник
oleg_log
источник