Size: a a a

2018 December 20
oleg_log
Заметил, что меня выбешивают твиты вида
>>> 0.1 + 0.1 + 0.1 == 0.3
False
>>> 0.1 + 0.1 + 0.1
0.30000000000000004

Может сначала теорию читнем, а потом полезем в твитор плакаться?
источник
oleg_log
источник
oleg_log
Погоняли сегодня тесты на одном сервисе. По сути прокси к бд, логики почти нет.
1к запросов.
Медиана 400мс.
75мс это couchbase, а остальное...
(барабанная дробь)
...спринг фреймворк!
Славься котлин и дутые абстракции.
источник
oleg_log
Не читал этот высе...блогпост, но уже видна рука неосилятора, что нормально и реально (notroll).
Но! мне доставил профиль автора: "архитектор".
Еще 1 гвоздь в лычку на бэйджике.
То в котлин результат "не с той стороны" (с)
То "скобки египетские" (с)
https://habr.com/post/421259/ #go
источник
2018 December 21
oleg_log
One of the more curious facts about human beings is that they can spend a day of introspection without discovering what is obvious to anyone who has spent a half hour in their company.
(c) Dee Hock
источник
oleg_log
В очередной раз забыл, что у руби есть своя жизнь, без рельс :(
источник
oleg_log
наконец-то я понял термины S1 & S2 в контексте G1GC
https://plumbr.io/handbook/gc-tuning-in-practice
источник
oleg_log
- I was told by a colleague that in X is the most expensive operation you could perform.
- Your most expensive operation would be listening to them.
(c)
источник
oleg_log
Вчера спалил коллегу, что он читает о массивах пхп в порно-моде хрома. Рофл был на 3 комнаты в офисе. Естественно он читал из-за проблем с открытием сайта, но мы-то все знаем 😏
источник
oleg_log
Только-что напоролся на красивый баг, мною же и написанный. Проверяется хедер, если нет - кидаем эксепшон. Все просто.
Добавляем тест, на пустой хедер (под капотом хелпер делает headers.add('Api-Key', null)  ± норм смотрится).
Естественно все зеленое и красивое.
Смотрим coverage - проверка не была вызвана, надо было:
if (apiKey != null) headers.add('Api-Key', apiKey)
Поэтому юзайте дети кавередж.
(кстати некоторые тесты до меня были зафакаплены из-за этого же, хех)
источник
oleg_log
Cloudflare:
Previously: 2x 12 core Intel Xeon Silver 4116 2.1Ghz 85W
Now: 2x 24 core Intel custom off-roadmap 1.9Ghz 150W

The performance of our infrastructure is heavily directed by how much compute we can squeeze in a given physical space and power. In essence, requests per second (RPS) per Watt is a critical metric that Qualcomm’s ARM64 46 core Falkor chip had a big advantage over Intel’s Skylake 4116.

Intel proposed to co-innovate with us an off-roadmap 24-core Xeon Gold CPU specifically made for our workload offering considerable value in Performance per Watt. For this generation, we continue using Intel as system solutions are widely available while we’re working on realizing ARM64’s benefits to production. We expect this CPU to perform with better RPS per Watt right off the bat; increasing the RPS by 200% from doubling the amount of cores, and increasing the power consumption by 174% from increasing the CPUs TDP from 85W to 150W each.

https://blog.cloudflare.com/a-tour-inside-cloudflares-g9-servers/
источник
oleg_log
30 to 50 people is where you go from being a family to being a company, and everything starts to get really hard.
(с)

Hiring is a network effect. The first 100 people you hire will define the next 200.
(с)
https://firstround.com/review/give-away-your-legos-and-other-commandments-for-scaling-startups/
источник
oleg_log
да, в итоге на 3к строк в файле, только 30 код, остальное коменты которые при этом тесты. Лучше не придумать. Не понимаю этого прикола, когда все в одном файле, это такая хитрая оптимизация дерева файловой системы? У элексира кстати тот же подход :(
источник
oleg_log
Хах, опять цпу кеш + латенси рама удивляют.
На самом деле отличный наглядный пример, что такое ПОИНТЕР.
https://blogs.msdn.microsoft.com/oldnewthing/20181205-00/?p=100405
источник
2018 December 22
oleg_log
С уважаемым @corpix (его жж @documentsjournal) перетерли эту тему и у меня появилось несколько коментов:
0. никто не говорит, что писать тесты и доку это плохо, конечно же они нужны, и вообще без них лучше ничего не делать.
1. когда код и тесты сливаются в одно, становится не так легко грепать код и тесты отдельно, приходится иметь АСТ либо какой-то контекст.
2. становится не так просто бегать по нему, код буквально растворяется в комментариях и тестах.
3. хранить все в одном файле, так же как и разносить каждый класс по новому файлу - оверкилл. обе крайности и не совсем адекватные. все должно быть по Таносу.
4. создавать больше одного файла, как и открывать 2 файла в || окнах давно не проблема, поэтому скидывать яйца в одну кучу - сомнительно.
Короч, код и тесты в разных файлах - ништяк.
Как и примеры использования кода.
источник
oleg_log
внутренности net/http в гошечке 😢
источник
oleg_log
ОМГ, оказывается гитхаб подтягивает все коммиты, которые может найти. Пояснение там в коментах
https://github.com/torvalds/linux/commit/b4061a10fc29010a610ff2b5b20160d7335e69bf
источник
oleg_log
источник
oleg_log
It's true, there's no individual competitive advantage for Microsoft to continue developing their own Edge browser. Moving to chrome is just good business, as they say. But as we've seen with SQLite, ubitquity is it's own risk. SQLite is everywhere because it's easy to use and does the job. Thank network effects for the rest. The problem is when SQLite has serious vulnerabilities—remote code execution—then the entire ecosystem is immediately at risk. Monocultures aren't robust, yet the winner take all nature of tech over time tends to produce monocultures. While Microsoft benefits from their decision, herd immunity would benefit from more diversity. Innoculate now. There are no bulkheads for ubiquity.
(c)
источник
oleg_log
источник