oleg_log
1.73K subscribers
1.88K photos
131 videos
9 files
2.82K links
Shelter for antisocial programmers "Oleg"

halp: @olegkovalov
web: https://olegk.dev
fov: @oleg_fov
chat: @oleg_log_blabla
podcast: @generictalks
Download Telegram
Вечно теряю эту ссылку, придется оставить здеся. Там сравнение разных задержек + по годам можно посмотреть динамику.

Latency Numbers Every Programmer Should Know

https://colin-scott.github.io/personal_website/research/interactive_latency.html
oleg_fov
#db https://www.youtube.com/watch?v=HOho4HyKqTE
А вот это очень крутой и важный доклад. Всем пионерам нужно знать.
Уважаемый Вадим подкинул статью об устройстве LB Cloudflare

https://blog.cloudflare.com/high-availability-load-balancers-with-maglev/

На самом деле Maglev идёт из ресерч статьи https://research.google/pubs/pub44824/

(и всё таки у них есть к8с, поэтому-то мне и скинули :)
еее, пины и хекседитор
Forwarded from Hermitage
VSCode 1.46

Релизу 2 дня, но мне было не до того. В числе прочего полезного наконец-то занесли pinned tabs. Как мало надо для радости.

Мои хайлайты:
- Undo across files, even if the files have been closed in the meantime
- Automatic debug configurations improvements [и] "Step Into Target" feature that displays UI for directly stepping into the function you are interested in
- нативные Settings Sync все еще в Preview, но есть прогресс
- удобные доработки в Remote/Containers
- новый родной Hex Editor экстеншен (!), пока еще куцый, но начало положено (следил и в числе прочих возмущался в ишшуях отсутствию поддержки бинарных форматов еще пару лет назад), и в этой связи:
- finalized the API for custom binary editors (!). [API] lets extensions create custom webview-based editors […] can be used for previewing asset files, such as images or 3D models, directly within VS Code, or for building more specialized editing interfaces for specific file types
- Windows ARM64 Insiders (дамоклов меч 😏)
- и многое другое.
Наверное вы слышали о течении, связанном с переименованием бранчей (master -> main или подобное).

Так вот, если у вас CI/CD захардкожен на масте - что-то может отпасть. Самое время подумать, не шлепнется ли пайплайн на выходных.

Распространи, пионер. За подсказку спасибо @golanglibrary & @devopslibrary

Виновник торжества справедливости https://www.hanselman.com/blog/EasilyRenameYourGitDefaultBranchFromMasterToMain.aspx
Такое предчувствие, что все сидят читают release notes #go 1.15 (сужу по чатам и лс)

https://tip.golang.org/doc/go1.15

- vet ругается на string(x)
- неправильный каст интерфейсов
- -spectre если вы параноик
- линкер хорош: 20% faster, 30% less memory
- плагины под osx !
- обрадую вас:sync.Map.LoadAndDelete
- да и всякое по мелочи

Хороший релиз будет.
Долгожданная поддержка HTTP/3 в Nginx, пока еще превью сбоку, но видно в 2020 это будет зарелижено.

https://www.nginx.com/blog/introducing-technology-preview-nginx-support-for-quic-http-3/

Немного обидно, что каждый делает свой "велосипед". У Сloudflare (опять они!) своё на Rust https://github.com/cloudflare/quiche Envoy подозреваю напишут свой и так каждый.

Понятны причины, но велосипедостроение порой удручает. Байты не на то тратятся!
oleg_log
К P A C U B 0 https://www.youtube.com/watch?v=DuB8VUICGqc // will occasionally show ads https://www.youtube.com./watch?v=DuB8VUICGqc // will not show ads тред https://www.reddit.com/r/webdev/comments/gzr3cq/fyi_you_can_bypass_youtube_ads_by_adding_a_dot/
Как сломать Firefox on Windows

Цитирую:

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

Решение: удалить все папки из \storage\default с точкой в конце названия, cygwin для этого подходит.

Будьте внимательны, прости, Пётр)
Фраза чуть избитая, но её часто забывают, хотя она правдивая
Мой хороший друг опубликовал одну библиотеку для React Native, поддержите звездочкой, очень прошу :) А еще лучше скажите своим коллегам, им может пригодиться.

https://github.com/flyerhq/react-native-keyboard-accessory-view

Еще можно почитать, зачем и почему https://dev.to/demchenkoalex/making-a-right-keyboard-accessory-view-in-react-native-4n3p
oleg_log
Мой хороший друг опубликовал одну библиотеку для React Native, поддержите звездочкой, очень прошу :) А еще лучше скажите своим коллегам, им может пригодиться. https://github.com/flyerhq/react-native-keyboard-accessory-view Еще можно почитать, зачем и почему…
Подскажите еще пожалуйста каналы о моб. разработке, бложики, новостные ленты и прочее, стало интересно, что там происходит. Можете кидать сюда @olegkovalov

Можно еще каналы с подборками/лентами опенсурс вещей скинуть, я парочку потерял.

Потом, как всегда, опубликую список.
Оп-па http://jepsen.io/analyses/postgresql-12.3

Results
In most respects, PostgreSQL behaved as expected: both read uncommitted and read committed prevent write skew and aborted reads. We observed no internal consistency violations. However, we have two surprising results to report. The first is that PostgreSQL’s “repeatable read” is weaker than repeatable read, at least as defined by Berenson, Adya, Bailis, et al. This is not necessarily wrong: the ANSI SQL standard is ambiguous. The second result, which is definitely wrong, is that PostgreSQL’s “serializable” isolation level isn’t serializable: it allows G2-item during normal operation.
tic-tac-toe in a single call to printf (Written for IOCCC 2020)

while(*d) printf(fmt, arg); (главное параметры правильные дать)

#ненормальное https://github.com/carlini/printf-tac-toe
This media is not supported in your browser
VIEW IN TELEGRAM
no one: ..
parsers:
Сижу я пью чай и придумываю вопрос вам. Вот что придумал: а скажите, что во вашему мнению должен иметь каждый self-host продукт?

Тот самый, который вы можете запустить у себя на ноуте/сервере. Считайте что речь про Postgres, Github/lab, нода tor или тому подобное (речь скорее про вебсервис, который отдаёт что-то по хттп).

Наверное глобальное как "должно иметь конфиг, хоть какую-то документацию, сайт/репо" писать не стоит. Интересны детали, дьявол в мелочах, так сказать.

Пишите -> @olegkovalov
Посту уже месяц, но я только сегодня дошёл до него. И не зря. Довольно интересная история, как на одной машине перестал работать DNS.

TLDR: мелкий баг в ядре со знаковым интом, но что еще интересно, что можно было найти причину чуть раньше, если бы была провреена конфигурация ядра.

Конечно читая статью это уже понятно и очевидно, но на самом деле, заметная доля багов по стороне пользователя - misconfiguration.

https://cloud.google.com/blog/topics/inside-google-cloud/google-cloud-support-engineer-solves-a-tough-dns-case
Мне надо в кое-чём признаться, я забыл, что в #go есть пакет testing/iotest (https://pkg.go.dev/testing/iotest?tab=doc)

Там разные io.Reader/Writer которые возвращают ошибки. Но самого главного не было! Самого простого ErrReader, который сразу отдаёт ошибку (давайте честно, это пожалуй самое очевидное, что можно использовать).

Его вот и добавили https://github.com/golang/go/issues/38781 Правда сюдя по всему увидим мы его в 1.16, аж в феврале 2021 :(