Радость познания (The pleasure of finding things out) - 2
Продолжая пост про первую половину этой крутой книги, рассмотрим оставшиеся главы
8. Что такое наука? - лекция для молодых преподавателей, где Фейнман хотел поделиться с ним своих подходом к познанию сути вещей, то есть как смотреть на мир с любопытством и непредвзятостью, но прежде всего как научиться во всем сомневаться
9. Самый большой умник на свете - здесь Фейнман признается в своей любви к физике и говорит, что меньше всего любит философию, а также обсуждает КЭД, про которую есть отдельная книга "КЭД - странная теория света и вещества", про которую я уже рассказывал
10. Наука ослепляющей дикости: некоторые замечания по поводу науки, псевдонауки и рекомендации, как не дать себя одурачить - здесь Фейнман круто рассказывает про карго-культ и приводит историю туземцев на островах, которые строили соломенные самолеты и аэродром, чтобы к ним опять начали поступать грузы с большой земли:)
11. Это просто - как раз, два, три - смешная история про Фейнмана в студенческие времена, которая демонстрирует его экспериментальный подход к выяснению загадки счета и времени
12. Ричард Фейнман строит Вселенную - здесь Фейнман круто рассказывает про свое первое выступление перед учеными, которое случилось сразу перед нобелевскими лауреатами:) А также о звонке о получении Нобелевской премии, на который Ричард ответил "Не могли бы вы сообщить мне об этом утром?"
13. Взаимосвязь науки и религии - философская лекция, в конце которой Фейнман объединяет "два великих наследия западной цивилизации": дух научного приключения и христианскую этику. Наука позволяет нам участвовать в захватывающем путешествии в непознанное, где тайны Вселенной все равно остаются незыблемыми и все подлежит сомнению, а религия дает базис любви и братства людей, говорит о ценности отдельной личности и смиренности духа.
P.S.
Забавно, что у меня появилась эта книга после поездки на Физтех ради выступления, про которую я рассказывал раньше.
#PopularScience #Physics #Biography
Продолжая пост про первую половину этой крутой книги, рассмотрим оставшиеся главы
8. Что такое наука? - лекция для молодых преподавателей, где Фейнман хотел поделиться с ним своих подходом к познанию сути вещей, то есть как смотреть на мир с любопытством и непредвзятостью, но прежде всего как научиться во всем сомневаться
9. Самый большой умник на свете - здесь Фейнман признается в своей любви к физике и говорит, что меньше всего любит философию, а также обсуждает КЭД, про которую есть отдельная книга "КЭД - странная теория света и вещества", про которую я уже рассказывал
10. Наука ослепляющей дикости: некоторые замечания по поводу науки, псевдонауки и рекомендации, как не дать себя одурачить - здесь Фейнман круто рассказывает про карго-культ и приводит историю туземцев на островах, которые строили соломенные самолеты и аэродром, чтобы к ним опять начали поступать грузы с большой земли:)
11. Это просто - как раз, два, три - смешная история про Фейнмана в студенческие времена, которая демонстрирует его экспериментальный подход к выяснению загадки счета и времени
12. Ричард Фейнман строит Вселенную - здесь Фейнман круто рассказывает про свое первое выступление перед учеными, которое случилось сразу перед нобелевскими лауреатами:) А также о звонке о получении Нобелевской премии, на который Ричард ответил "Не могли бы вы сообщить мне об этом утром?"
13. Взаимосвязь науки и религии - философская лекция, в конце которой Фейнман объединяет "два великих наследия западной цивилизации": дух научного приключения и христианскую этику. Наука позволяет нам участвовать в захватывающем путешествии в непознанное, где тайны Вселенной все равно остаются незыблемыми и все подлежит сомнению, а религия дает базис любви и братства людей, говорит о ценности отдельной личности и смиренности духа.
P.S.
Забавно, что у меня появилась эта книга после поездки на Физтех ради выступления, про которую я рассказывал раньше.
#PopularScience #Physics #Biography
🔥12👍4❤2
На корпоративе коллеги пошутили со сцены, представляя меня, что в 2024 году
С учетом плана написания своей книги, это очень вероятно:)
#Humour
Александ Поломодов научится читать книги быстрее, чем авторы их писать
С учетом плана написания своей книги, это очень вероятно:)
#Humour
😁58🔥9⚡3❤2
Щелкунчик и Мышиный король
О приближении нового года можно следить по традиционным рождественнским представлениям и их частотности. Так получилось, что за последние 24 часа я дважды был на постановках Щелкунчика по повести-сказке Гофмана, но какие разные это были постановки
1) Вчера вечером это было иммерсивное шоу, которое разворачивалось на трех этажах особняка, которые отображали соответственно мир мышей, мир людей и мир игрушек. Механика этой постановки предполагала одновременное разворачивание событий на всех трех этажах и молчаливых зрителей, которые имели свободу воли и могли выбирать на каком им этаже быть, за каким персонажем следить и следить ли вообще за чем-то:) Я на такой постановке в первый раз и она мне показалась достаточно интересной.
2) Сегодня утром это была постановка для детей в домике Фанни Белл, где самые маленькие дети фактически сидят в первом ряду, который не отделен от сцены. В этой постановке участвовали только 3 актера, но они делали это очень хорошо - маленькие зрители вовлекались в представление, общались с актерами, подсказывали, что видели Мышиного Короля, а также участвовали в атаке на него, закидывая снежками. В общем, детям очень понравилось:)
Так за одни сутки я дважды увидел постановку по мотивам Щелкунчика и смог сравнить как обыгрывается сюжет для аудитории разных возрастов:)
#Theater #ForKids #ForParents
О приближении нового года можно следить по традиционным рождественнским представлениям и их частотности. Так получилось, что за последние 24 часа я дважды был на постановках Щелкунчика по повести-сказке Гофмана, но какие разные это были постановки
1) Вчера вечером это было иммерсивное шоу, которое разворачивалось на трех этажах особняка, которые отображали соответственно мир мышей, мир людей и мир игрушек. Механика этой постановки предполагала одновременное разворачивание событий на всех трех этажах и молчаливых зрителей, которые имели свободу воли и могли выбирать на каком им этаже быть, за каким персонажем следить и следить ли вообще за чем-то:) Я на такой постановке в первый раз и она мне показалась достаточно интересной.
2) Сегодня утром это была постановка для детей в домике Фанни Белл, где самые маленькие дети фактически сидят в первом ряду, который не отделен от сцены. В этой постановке участвовали только 3 актера, но они делали это очень хорошо - маленькие зрители вовлекались в представление, общались с актерами, подсказывали, что видели Мышиного Короля, а также участвовали в атаке на него, закидывая снежками. В общем, детям очень понравилось:)
Так за одни сутки я дважды увидел постановку по мотивам Щелкунчика и смог сравнить как обыгрывается сюжет для аудитории разных возрастов:)
#Theater #ForKids #ForParents
❤15👍4❤🔥2
Как формировать структуру команд под запросы бизнеса на YaTalks 2023
Появилась запись моего выступления на YaTalks, где я рассказывал про основы и принципы дизайна команд, которые помогали мне на протяжении 7 лет работы в Тинькофф.
Часть выступления уже доступна в виде расшфировок
1) пост про структуру команд
2) пост про проектный подход
3) пост про продуктовый подход
4) пост про масштабирование (пока на очереди)
В общем, для тех, кто больше любит видео, теперь оно доступно для просмотра:)
#Management #Leadership #Project #ProjectManagement #SoftwareDevelopment #Software
Появилась запись моего выступления на YaTalks, где я рассказывал про основы и принципы дизайна команд, которые помогали мне на протяжении 7 лет работы в Тинькофф.
Часть выступления уже доступна в виде расшфировок
1) пост про структуру команд
2) пост про проектный подход
3) пост про продуктовый подход
4) пост про масштабирование (пока на очереди)
В общем, для тех, кто больше любит видео, теперь оно доступно для просмотра:)
#Management #Leadership #Project #ProjectManagement #SoftwareDevelopment #Software
YouTube
Как формировать структуру команд под запросы бизнеса / Александр Поломодов, Тинькофф
Рост компании всегда приводит к большому количеству изменений: организационных, продуктовых и инженерных. С чего начать редизайн структуры подразделения, в котором почти тысяча человек?
О своём опыте использования основ и принципов дизайна команд рассказывает…
О своём опыте использования основ и принципов дизайна команд рассказывает…
👍19🔥4❤3
Code of Architecture рзабор white paper «Google's Hybrid Approach to Research»
Сегодня в 18:00 мы проведем новогодний стрим по архитектуре. В рамках встречи мы поговорим про то, как устроено RnD (Research and Development) в Google
— какую цель исследований поставила для себя компания и почему;
— к каким резльтатам она привела;
— как устроен гибридный подход к исследованиям там;
— как выглядят паттерны организации взаимодействия исследовательских и продуктовых инженерных команд;
— почему и зачем компании инвестируют в Google.
Гостями эфира станут наши коллеги
- Игорь Маслов, руководитель управления базовых технологий и обработки данных Тинькофф
- Станислав Моисеев, директор инженерных исследований в Тинькофф
На тему стрима можно почитать материалы
- PDF версия доступна здесь
- Мой обзор этой статьи доступен здесь
- Моя статья про RnD в крупных компаниях (Google, Amazon, Yandex, Tinkoff)
#Software #Architect #SystemDesign #Philosophy #SoftwareArchitecture #Processes #Management #RnD #CoA
Сегодня в 18:00 мы проведем новогодний стрим по архитектуре. В рамках встречи мы поговорим про то, как устроено RnD (Research and Development) в Google
— какую цель исследований поставила для себя компания и почему;
— к каким резльтатам она привела;
— как устроен гибридный подход к исследованиям там;
— как выглядят паттерны организации взаимодействия исследовательских и продуктовых инженерных команд;
— почему и зачем компании инвестируют в Google.
Гостями эфира станут наши коллеги
- Игорь Маслов, руководитель управления базовых технологий и обработки данных Тинькофф
- Станислав Моисеев, директор инженерных исследований в Тинькофф
На тему стрима можно почитать материалы
- PDF версия доступна здесь
- Мой обзор этой статьи доступен здесь
- Моя статья про RnD в крупных компаниях (Google, Amazon, Yandex, Tinkoff)
#Software #Architect #SystemDesign #Philosophy #SoftwareArchitecture #Processes #Management #RnD #CoA
YouTube
White paper «Google's Hybrid Approach to Research»
На эфире обсудим, как устроено RnD (Research and Development) в Google.
Поговорим:
— какую цель исследований поставила для себя компания и почему;
— к каким резльтатам она привела;
— как устроен гибридный подход к исследованиям там;
— как выглядят…
Поговорим:
— какую цель исследований поставила для себя компания и почему;
— к каким резльтатам она привела;
— как устроен гибридный подход к исследованиям там;
— как выглядят…
❤8👍2🔥2
Новогодний титул в Тинькофф
Мои коллеги устроили новогодний утренник прямо в приложении Тинькофф. Все как в детстве: снежинки, зайчики, лисички и другие персонажи. Роль найдется для каждого – в зависимости от того, какие траты были в 2023 году. Этот титул доступен для просмотра в разделе мобильных историй.
А мой титул в этом году "Добрый доктор". И вот как это получилось:
- В середине года мою аусси по имени Люси порвала стая охотничьих собак прямо на собачей площадке
- Я больше недели ездил по утрам в ветеринарную клинику, а иногда и по вечерам
- Мы вылечили прокушенную грудь и надкусанную лапу Люси
- Люси теперь бегает как ни в чем не бывало:)
#Humor
Мои коллеги устроили новогодний утренник прямо в приложении Тинькофф. Все как в детстве: снежинки, зайчики, лисички и другие персонажи. Роль найдется для каждого – в зависимости от того, какие траты были в 2023 году. Этот титул доступен для просмотра в разделе мобильных историй.
А мой титул в этом году "Добрый доктор". И вот как это получилось:
- В середине года мою аусси по имени Люси порвала стая охотничьих собак прямо на собачей площадке
- Я больше недели ездил по утрам в ветеринарную клинику, а иногда и по вечерам
- Мы вылечили прокушенную грудь и надкусанную лапу Люси
- Люси теперь бегает как ни в чем не бывало:)
#Humor
👏22❤19👍3❤🔥1💊1
Brewer's conjecture and the feasibility of consistent, available, partition-tolerant web services
Я уже рассказывал про знаменитую CAP теорему за авторством Eric Brewer. А сегодня я расскажу про whitepaper 2002 года от Seth Gilbert и Nancy Lynch, в котором гипотеза стала теоремой. Сама гипотеза для доказательства звучит так
Все эти свойства желательны в реальных системах. Но для того, чтобы доказать это утверждение, требуется для начала формализовать все три свойства
1) Начать стоит с consistency, где авторы идут в сторону atomic data objects или линеаризуемой консистентности (linearizable consistency)
Такие гарантии косистентности пользователям проще воспринимать и для такой модели проще проектировать клиентское приложение, которое будет взаимодействовать с такой распределенной системой.
2) Второй характеристикой является availability, где для непрерывной доступности каждый запрос, попавший на несбойную ноду системы должен получить свой ответ. Таким образом любой алгоритм для генерации ответа сервисов должен оканчиваться в конечном счете (eventually terminate). Интересно, что это слабое определение доступности, так как нет верхней границы на время ответа - это позволяет unbounded computation. Но если рассматривать это с позиции устойчивости к разделению, то это может рассматриваться как сильное определение доступности - даже если происходят сбои в сети, каждый запрос должен завершиться.
3) Для моделирования partition-tolerance авторы предлагают считать, что в сети может теряться произвольное количество сообщений, что отправляются от одной ноде к другой. А значит мы можем моделировать любой паттерн потерь
Дальше авторы переходят к доказательствам
1) Начнем сначала с асинхронных систем
Доказывается эта теорема на пальцах методом от противного. Представим, что такой алгоритм существует. Дальше представим систему из двух нод G1 и G2. Дальше считаем, что у нас теряются все сообщения между G1 и G2. Дальше происходит запись в G1 и позже чтение из G2. В итоге, чтение с G2 не сможет вернуть значение, что было записано в G1. В самой статье есть и более формальное доказательство.
2) В реальном мире у нас используются не полностью асинхронные системы, а частично синхронные. В них у нод есть свои часы, которые позволяют замерять время и использовать таймауты. Но даже в более мощном сетапе мы получаем похожий результат
Доказательство тут похоже на предыдущее как две капли воды:)
Оставшаяся часть white paper посвящена Delayed-t consistency в частично синхронных системах, про которую мы тут говорить не будем.
А в следующем посте поговорим про теорему PACELC.
#Software #Architecture #DistributedSystems #SystemDesign
Я уже рассказывал про знаменитую CAP теорему за авторством Eric Brewer. А сегодня я расскажу про whitepaper 2002 года от Seth Gilbert и Nancy Lynch, в котором гипотеза стала теоремой. Сама гипотеза для доказательства звучит так
It is impossible for a web service to provide the following three guarantees: consistency, availability, partition-tolerance
Все эти свойства желательны в реальных системах. Но для того, чтобы доказать это утверждение, требуется для начала формализовать все три свойства
1) Начать стоит с consistency, где авторы идут в сторону atomic data objects или линеаризуемой консистентности (linearizable consistency)
Under this consistency guarantee, there must exist a total order on all operations such that each operation looks as if it were completed at a single instant. This is equivalent to requiring requests of the distributed shared memory to act as if they were executing on a single node, responding to operations one at a time.
Такие гарантии косистентности пользователям проще воспринимать и для такой модели проще проектировать клиентское приложение, которое будет взаимодействовать с такой распределенной системой.
2) Второй характеристикой является availability, где для непрерывной доступности каждый запрос, попавший на несбойную ноду системы должен получить свой ответ. Таким образом любой алгоритм для генерации ответа сервисов должен оканчиваться в конечном счете (eventually terminate). Интересно, что это слабое определение доступности, так как нет верхней границы на время ответа - это позволяет unbounded computation. Но если рассматривать это с позиции устойчивости к разделению, то это может рассматриваться как сильное определение доступности - даже если происходят сбои в сети, каждый запрос должен завершиться.
3) Для моделирования partition-tolerance авторы предлагают считать, что в сети может теряться произвольное количество сообщений, что отправляются от одной ноде к другой. А значит мы можем моделировать любой паттерн потерь
When a network is partitioned, all messages sent from nodes in one component of the partition to nodes in another component are lost. (And any pattern of message loss can be modeled as a temporary partition separating the communicating nodes at the exact instant the message is lost.)
Дальше авторы переходят к доказательствам
1) Начнем сначала с асинхронных систем
Theorem 1 It is impossible in the asynchronous network model to implement a read/write data object that guarantees the following properties:
• Availability
• Atomic consistency
in all fair executions (including those in which messages are lost).
Доказывается эта теорема на пальцах методом от противного. Представим, что такой алгоритм существует. Дальше представим систему из двух нод G1 и G2. Дальше считаем, что у нас теряются все сообщения между G1 и G2. Дальше происходит запись в G1 и позже чтение из G2. В итоге, чтение с G2 не сможет вернуть значение, что было записано в G1. В самой статье есть и более формальное доказательство.
2) В реальном мире у нас используются не полностью асинхронные системы, а частично синхронные. В них у нод есть свои часы, которые позволяют замерять время и использовать таймауты. Но даже в более мощном сетапе мы получаем похожий результат
Theorem 2 It is impossible in the partially synchronous network model to
implement a read/write data object that guarantees the following properties:
• Availability
• Atomic consistency
in all executions (even those in which messages are lost).
Доказательство тут похоже на предыдущее как две капли воды:)
Оставшаяся часть white paper посвящена Delayed-t consistency в частично синхронных системах, про которую мы тут говорить не будем.
А в следующем посте поговорим про теорему PACELC.
#Software #Architecture #DistributedSystems #SystemDesign
Telegram
Книжный куб
CAP Theorem
Знаменитой CAP теореме исполнилось 25 лет, поэтому хотелось что это такое, зачем она и как появилась. Про это есть отличная статья от Eric Brewer, автора теоремы, который написал ее больше 10 лет назад, которую хотелось вспомнить, так как она…
Знаменитой CAP теореме исполнилось 25 лет, поэтому хотелось что это такое, зачем она и как появилась. Про это есть отличная статья от Eric Brewer, автора теоремы, который написал ее больше 10 лет назад, которую хотелось вспомнить, так как она…
🔥9❤4👍3🤔3
Пара записей с поездки в Питер на ICPC и ВКОШП
Я уже писал раньше о том, как ездил в Питер на эти мероприятия, чтобы поучаствовать в них, так как Тинькофф спонсирует эти чемпионаты по программированию. Мне очень понравилась атмосфера контеста и его участники, поэтому я рад, что съездил туда + я поучаствовал не только в церемониальных частях мероприятий, но и побывал на прямых трансляциях, где обсудил с Лидией Перовской разные моменты
1) Трансляция ВКОШП - эта трансляция командных соревнований школьников и здесь мы поговорили на следующие темы
- про формат соревнований и почему они настолько интересны
- почему командные соревнования по программированию неплохо моделируют командную работу инженеров в реальной разработке
- про роль тимлида в команде
- про то, что можно успеть за 26 минут
- про выступление на YaTalks про структуру команд
- про то, как я почти не пишу код в последнее время, но стабильно читаю его
- интересно про инциденты и отсылку к публичному интервью по troubleshooting на Devoops
- про a/b платформу и продуктовую аналитику
- про найм олимпиадников в команды (тут я рассказал забавную историю из опыта)
2) Трансляции ICPC - это трансляция командных соревнований студентов и здесь мы поговорили про следующие темы
- про мою зону ответственности в Тинькофф
- про мое обучение в МФТИ
- про сложность подготовки к соревнованиям
- про стажировки в компаниях, где выстроены процессы разработки (лучше в Тинькофф)
- хорошие советы о том, как правильно работать в команде по спортивному программированию:)
- про канбан-метод и визуализацию работы
- про сложные процессы в больших компаниях и синхронизацию знаний
- про важность ретроспектив
- про современные шахматы, обучение им и как это прокачивает мышление
#Software #SoftwareDevelopment #Conference #Engineering
Я уже писал раньше о том, как ездил в Питер на эти мероприятия, чтобы поучаствовать в них, так как Тинькофф спонсирует эти чемпионаты по программированию. Мне очень понравилась атмосфера контеста и его участники, поэтому я рад, что съездил туда + я поучаствовал не только в церемониальных частях мероприятий, но и побывал на прямых трансляциях, где обсудил с Лидией Перовской разные моменты
1) Трансляция ВКОШП - эта трансляция командных соревнований школьников и здесь мы поговорили на следующие темы
- про формат соревнований и почему они настолько интересны
- почему командные соревнования по программированию неплохо моделируют командную работу инженеров в реальной разработке
- про роль тимлида в команде
- про то, что можно успеть за 26 минут
- про выступление на YaTalks про структуру команд
- про то, как я почти не пишу код в последнее время, но стабильно читаю его
- интересно про инциденты и отсылку к публичному интервью по troubleshooting на Devoops
- про a/b платформу и продуктовую аналитику
- про найм олимпиадников в команды (тут я рассказал забавную историю из опыта)
2) Трансляции ICPC - это трансляция командных соревнований студентов и здесь мы поговорили про следующие темы
- про мою зону ответственности в Тинькофф
- про мое обучение в МФТИ
- про сложность подготовки к соревнованиям
- про стажировки в компаниях, где выстроены процессы разработки (лучше в Тинькофф)
- хорошие советы о том, как правильно работать в команде по спортивному программированию:)
- про канбан-метод и визуализацию работы
- про сложные процессы в больших компаниях и синхронизацию знаний
- про важность ретроспектив
- про современные шахматы, обучение им и как это прокачивает мышление
#Software #SoftwareDevelopment #Conference #Engineering
❤7🔥3🦄2
День влюбленных в математику
В следующем году Тинькофф, ИТМО и Тинькофф Образование организует конкурс для студентов, которые любят математику. Победителям достанутся денежные призы и классный мерч. Всего будут три этапа:
- Отборочный онлайн-тур - Разнобой, 12-18 февраля
- Офлайн-полуфинал в регионах России - Интеллектуальная викторина, 2 марта
- Финал в Москве - Математическая регата, 23 марта
P.S.
Мне с самого детства нравилась математика, поэтому я и поступил в МФТИ на факультет управления и прикладной математики. Ученого из меня не получилось, но я до сих пор люблю читать научно-популярную литературу по математике. Например, я раньше уже писал про следующие интересные книги, связанные с математикой
- Модельное мышление (The Model Thinker)
- Принцип ставок (Thinking in Bets)
- Заходит экономист в публичный дом (An economist walks into a brothel)
- Теория игр (A Game Theorist's Guide to Success in Business and Life)
- Игра случая (Fluke. The Math and Myth of Coincidence)
- Теория игр в комиксах
- Величайшие математические задачи (The Great Mathematical Problems)
- Понимать, но не предвидеть. Предвидеть, но не понимать (Comprendre sans prevoir, prevoir sans comprendre)
- Математический беспредел. От элементарной математике к возвышенным абстракциям (Beyond Infinity: An expedition to the outer limits of the mathematical universe)
- Статистика. Краткий курс в комиксах (The cartoon guide to statistics)
- Статистика в комиксах (Inroducing Statistics. A Graphic Guide)
- What Is ChatGPT Doing ... and Why Does It Work?
- Романтика искусственного интелекта
- Занимательная статистика. Манга (The Manga Guide to Statistics)
#Math #PopularScience #Education #SelfDevelopment
В следующем году Тинькофф, ИТМО и Тинькофф Образование организует конкурс для студентов, которые любят математику. Победителям достанутся денежные призы и классный мерч. Всего будут три этапа:
- Отборочный онлайн-тур - Разнобой, 12-18 февраля
- Офлайн-полуфинал в регионах России - Интеллектуальная викторина, 2 марта
- Финал в Москве - Математическая регата, 23 марта
P.S.
Мне с самого детства нравилась математика, поэтому я и поступил в МФТИ на факультет управления и прикладной математики. Ученого из меня не получилось, но я до сих пор люблю читать научно-популярную литературу по математике. Например, я раньше уже писал про следующие интересные книги, связанные с математикой
- Модельное мышление (The Model Thinker)
- Принцип ставок (Thinking in Bets)
- Заходит экономист в публичный дом (An economist walks into a brothel)
- Теория игр (A Game Theorist's Guide to Success in Business and Life)
- Игра случая (Fluke. The Math and Myth of Coincidence)
- Теория игр в комиксах
- Величайшие математические задачи (The Great Mathematical Problems)
- Понимать, но не предвидеть. Предвидеть, но не понимать (Comprendre sans prevoir, prevoir sans comprendre)
- Математический беспредел. От элементарной математике к возвышенным абстракциям (Beyond Infinity: An expedition to the outer limits of the mathematical universe)
- Статистика. Краткий курс в комиксах (The cartoon guide to statistics)
- Статистика в комиксах (Inroducing Statistics. A Graphic Guide)
- What Is ChatGPT Doing ... and Why Does It Work?
- Романтика искусственного интелекта
- Занимательная статистика. Манга (The Manga Guide to Statistics)
#Math #PopularScience #Education #SelfDevelopment
Т‑Образование
Командная математическая игра от Т‑Банка
Математическое соревнование для студентов вузов России
❤8👍6🔥2
Материалы к Code of Architecture по white paper «Google's Hybrid Approach to Research»
В этот понедельник мы провели новогодний стрим по архитектуре. В рамках встречи мы поговорили про то, как устроено RnD (Research and Development) в Google.
Гостями эфира были наши коллеги
- Игорь Маслов, руководитель управления базовых технологий и обработки данных Тинькофф
- Станислав Моисеев, директор инженерных исследований в Тинькофф
Материалы, которые мы упоминали в рамках выпуска представлены ниже
- Мы обсуждали сам white paper, доступный здесь
- Для визуализации взаимодействий мы использовали слайд с топологией команд, который был из моей статьи с обзором этого white paper
- Мы проводили параллели с Team Topologies, про которую я отдельно рассказывал в трех частях: 1, 2, 3
- Мы обсудили и обновленную философию RnD от Google с сайта research.google. Интересно, что она чуток поменялась со временем написания whitepapaer про гибридный подход
- Мы пробедали быстро по крупным технологическим whitepaper от Google, про которые я отдельно рассказывал в статье про RnD в крупных компаниях (Google, Amazon, Yandex, Tinkoff)
- Поговорили про наши технологические продукты, которые были созданы для решения продуктовых задач и доступны на нашем сайте, например, про observability платформу Sage или наш Tinkoff VoiceKit для обработки голоса
Ну и напоследок мы рассказали о том, что в нашем инженерном RnD подразделении есть куча интересных направлений, а также что туда идет набор исследователей. Так что если вы всегда мечтали делать сложные инженерные задачи на переднем краю технологий, то вы можете написать мне, а я дальше уже познакомлю вас со Стасом или Игорем.
#Software #Architect #SystemDesign #Philosophy #SoftwareArchitecture #Processes #Management #RnD #CoA
В этот понедельник мы провели новогодний стрим по архитектуре. В рамках встречи мы поговорили про то, как устроено RnD (Research and Development) в Google.
Гостями эфира были наши коллеги
- Игорь Маслов, руководитель управления базовых технологий и обработки данных Тинькофф
- Станислав Моисеев, директор инженерных исследований в Тинькофф
Материалы, которые мы упоминали в рамках выпуска представлены ниже
- Мы обсуждали сам white paper, доступный здесь
- Для визуализации взаимодействий мы использовали слайд с топологией команд, который был из моей статьи с обзором этого white paper
- Мы проводили параллели с Team Topologies, про которую я отдельно рассказывал в трех частях: 1, 2, 3
- Мы обсудили и обновленную философию RnD от Google с сайта research.google. Интересно, что она чуток поменялась со временем написания whitepapaer про гибридный подход
- Мы пробедали быстро по крупным технологическим whitepaper от Google, про которые я отдельно рассказывал в статье про RnD в крупных компаниях (Google, Amazon, Yandex, Tinkoff)
- Поговорили про наши технологические продукты, которые были созданы для решения продуктовых задач и доступны на нашем сайте, например, про observability платформу Sage или наш Tinkoff VoiceKit для обработки голоса
Ну и напоследок мы рассказали о том, что в нашем инженерном RnD подразделении есть куча интересных направлений, а также что туда идет набор исследователей. Так что если вы всегда мечтали делать сложные инженерные задачи на переднем краю технологий, то вы можете написать мне, а я дальше уже познакомлю вас со Стасом или Игорем.
#Software #Architect #SystemDesign #Philosophy #SoftwareArchitecture #Processes #Management #RnD #CoA
❤4🔥3❤🔥2
Patterns & Anti-Patterns for Effective Feature Flagging • Edith Harbaugh • YOW! 2019
Интересное выступление от Edith Harbaugh, co-founder и CEO платформы для фича флагов LaunchDarkly. В самом начале Edith вспоминает про темные времена, когда она работала в компании, где релизы были раз в полтора года ... и это было быстро, потому что у конкурента они были каждые три года:) Дальше начинается рассказ про паттерны и анти-паттерны их использования. Но до этого хотелось бы обсудить, что сама идея флагов кажется очень простой: нам надо уметь закрывать часть функциональности в коде флагом, который можно удаленно включить/выключить. Это помогает с несколькими вещами
- С feature flags хорошо работает TBD (trunk based development), а без них почти нет
- Release management становится проще (особенно в мобилках)
- Можно тестировать функциональность на части аудитории, например сотрудниках
Но тут мы оказываемся на стыке двух миров - работы с кодом и релизами и экспериментами (a/b тесты, сегментация пользователей, персонализация, ...)
Ну а дальше давайте я расскажу про какие вещи говорила Edith
Паттеры и хорошие способы применения флагов
- Feature kill switches - паттерны для отключения фичей на случай проблем или на случай спайка нагрузки
- Мердж бранчей без конфликтов - условно feature flag - это enabler для TBD, про который я уже говорил
- Controlled rollout - условно раскатка порции трафика на новую фичу
- Early access betas для самых лояльных/лучших пользователей
- Для блокировки фичей для некоторых пользователей (например, тех, кому нужны только отстоявшиеся фичи)
- Для тестирования в проде и сокращения важности staging контура (Edith предлагает его вообще убить)
- Для подписок, где часть фичей доступна только по подписке (я думаю, что это странный кейс конечно)
- Для отключения старых фичей
Антипаттерны и косяки
- Кривое наименование флагов - это просто путает и мешает использовать флаги
- Overused flags - одни и те же флаги, которые используются разными командами по разному, условно одни думают, что этот флаг лечит от кашля, а другие, что от запора:)
- Конфликтующие флаги - учитывая комбинаторику, конфликтующие очень легко получить, особенно если не подумать заранее о том, что именно мы закрываем флагами
- Использование флагов для критической функциональности, которая уже давно не должна отключаться - пример с CMS системой, где можно флагом было отключить загрузку файлов, что эффективно отключало всю систему:) Смысл в том, что такой флаг уже давно стал бесмыссленным:)
- Флаги, что остаются в коде и никогда не выпиливаются - это просто ухудшает кодовую базу
Напоследок приводятся рекомендации
- Flag carefully
- Lock down access
- Remove flags
P.S.
У нас в компании были разные системы для управления флагами и экспериментами. Сейчас мы идем в сторону общего решения, где
- Базовые сценарии управления флагами будут прямо внутри нашей IDP (internal developer platform) - эта часть про код + release management
- Расширенные сценарии управления будут внутри a/b платформы - это часть про использование флагов для экспериментов, персонализаций, бет и так далее
Если вам нравятся такие задачи и у вас есть опыт промышленной разработки, то вы можете написать мне:)
#Software #Devops #SRE #Reliability #Architecture #Engineering #Processes
Интересное выступление от Edith Harbaugh, co-founder и CEO платформы для фича флагов LaunchDarkly. В самом начале Edith вспоминает про темные времена, когда она работала в компании, где релизы были раз в полтора года ... и это было быстро, потому что у конкурента они были каждые три года:) Дальше начинается рассказ про паттерны и анти-паттерны их использования. Но до этого хотелось бы обсудить, что сама идея флагов кажется очень простой: нам надо уметь закрывать часть функциональности в коде флагом, который можно удаленно включить/выключить. Это помогает с несколькими вещами
- С feature flags хорошо работает TBD (trunk based development), а без них почти нет
- Release management становится проще (особенно в мобилках)
- Можно тестировать функциональность на части аудитории, например сотрудниках
Но тут мы оказываемся на стыке двух миров - работы с кодом и релизами и экспериментами (a/b тесты, сегментация пользователей, персонализация, ...)
Ну а дальше давайте я расскажу про какие вещи говорила Edith
Паттеры и хорошие способы применения флагов
- Feature kill switches - паттерны для отключения фичей на случай проблем или на случай спайка нагрузки
- Мердж бранчей без конфликтов - условно feature flag - это enabler для TBD, про который я уже говорил
- Controlled rollout - условно раскатка порции трафика на новую фичу
- Early access betas для самых лояльных/лучших пользователей
- Для блокировки фичей для некоторых пользователей (например, тех, кому нужны только отстоявшиеся фичи)
- Для тестирования в проде и сокращения важности staging контура (Edith предлагает его вообще убить)
- Для подписок, где часть фичей доступна только по подписке (я думаю, что это странный кейс конечно)
- Для отключения старых фичей
Антипаттерны и косяки
- Кривое наименование флагов - это просто путает и мешает использовать флаги
- Overused flags - одни и те же флаги, которые используются разными командами по разному, условно одни думают, что этот флаг лечит от кашля, а другие, что от запора:)
- Конфликтующие флаги - учитывая комбинаторику, конфликтующие очень легко получить, особенно если не подумать заранее о том, что именно мы закрываем флагами
- Использование флагов для критической функциональности, которая уже давно не должна отключаться - пример с CMS системой, где можно флагом было отключить загрузку файлов, что эффективно отключало всю систему:) Смысл в том, что такой флаг уже давно стал бесмыссленным:)
- Флаги, что остаются в коде и никогда не выпиливаются - это просто ухудшает кодовую базу
Напоследок приводятся рекомендации
- Flag carefully
- Lock down access
- Remove flags
P.S.
У нас в компании были разные системы для управления флагами и экспериментами. Сейчас мы идем в сторону общего решения, где
- Базовые сценарии управления флагами будут прямо внутри нашей IDP (internal developer platform) - эта часть про код + release management
- Расширенные сценарии управления будут внутри a/b платформы - это часть про использование флагов для экспериментов, персонализаций, бет и так далее
Если вам нравятся такие задачи и у вас есть опыт промышленной разработки, то вы можете написать мне:)
#Software #Devops #SRE #Reliability #Architecture #Engineering #Processes
YouTube
Patterns & Anti-Patterns for Effective Feature Flagging • Edith Harbaugh • YOW! 2019
This presentation was recorded at YOW! 2019. #GOTOcon #YOW
https://yowcon.com
Edith Harbaugh - CEO & Co-founder at LaunchDarkly
ORIGINAL TALK TITLE
Mistakes Were Made – Patterns & Anti-Patterns for Effective Feature Flagging • Edith Harbaugh
RESOURCES…
https://yowcon.com
Edith Harbaugh - CEO & Co-founder at LaunchDarkly
ORIGINAL TALK TITLE
Mistakes Were Made – Patterns & Anti-Patterns for Effective Feature Flagging • Edith Harbaugh
RESOURCES…
❤7👍7🔥6
Вакансия Principal Engineer ко мне в команду
У меня есть отличная вакансия напрямую ко мне в команду в качестве Principal Engineer, который будет моим замом по инженерным активностям на уровне моего подразделения в 1к человек. Сразу скажу, что подразделение разделено на 4 управления и 1 отдел, в которых эти вопросы тоже отдельно прорабатываются, но мне нужен мой зам, чтобы курировать развитие важных тем и отслеживать движение по ним. Теперь подробнее по направлениям
1) Observability & reliability
На самом деле в моей концепции мира сами технические директора управлений отвечают за observability и надежность сервисов своих команд, но нужна централизация, так как
- у нас есть стандартные подходы к логам/метрикам/алертам - это наша observability платформа Sage
- у нас есть стандартные подходы к классификации сервисов по критичности и измерению их SLA - это наша платформа SLAser, в которой заводятся SLI/SLO/SLA и которая умеет расчитывать их соблюдения на основе данных в Prometheus
- у нас есть подход к работе с инцидентами и инструменты для автоматического их заведения и линковки между собой
Задача моего зама в том, чтобы знать про все эти инструменты, понимать как они связаны между собой, как ими пользоваться, а также помогать командам в моей зоне ответственности повысить свой уровень зрелости в области observability и reliability путем использования стандартных инструментов.
2) Capacity management
У нас есть стандартный процесс для управления мощностями, который требует активного планирования того, сколько потребуется ресурсов для наших сервисов в будущем. Так как у нас гибридное облако, то надо уметь планировать и inhouse мощности и мощности в публичных облаках, круто, что наша IDP (internal developer platform) умеет работать и inhouse и в public cloud, спасибо коллегам из Coretech. Интересно, что capacity planning - это зона технических руководителей управлений в моем подразделении, но мне нужен централизованный guidance от моего зама за тем, что все идет по плану (который мы обсуждаем с руководителями) + если есть проблемы, то их может разрулить мой зам
3) Migrations and EOL
У нас есть централизованный процесс миграций в нашем ИТ, который зачастую создает много работы для руководителей. Если миграция инициирована извне подразделения, то требуется понять как она аффектит нас и как уложится в целевые сроки и скоординировать все команды внутри. Для этого требуется зачастую крутой инженер, который понимает суть миграции и то, что она задевает внутри. Собственно, мой зам будет отвечать за эту координацию
4) Scalability
Компания активно растет последние годы, у нас в процессе много проектов по улучшению возможностей масштабирования наших систем под новые нагрузки. У меня есть зам по архитектуре, Антон, который отвечает за этот проект как в моем подразделении, так и на уровне все компании. Но и для моего зама по инженерным активностям найдется в этом проекте работа.
На самом деле есть еще большое количество интересных активностей, с которыми такой кандидат сможет мне помочь, но лучше двинуться дальше и ответить на вопрос "А что случилось с предшественником?", который у меня возникает, когда ищут кого-то на интересную позицию. Ответ в том, что мой коллега на этой позиции работал со мной 6 лет и работал хорошо, а потом решил переехать в солнечные края. Игорь - большой молодец и мне будет его нехватать, но теперь я ищу "нового Игоря":)
Если вам интересна вакансия, то дальше нам надо будет познакомиться, а дальше будет прохождение технических интервью, о многих из которых я уже рассказывал
- Общие инженерные вопросы - вопросы в форме блица про сети, работу компьютера, операционные системы, базы данных
- Алгоритмы и структуры данных - решение алгоритмических задач с написанием кода
- Troubleshooting - работа над инцидентом в типовой системе (вот пост про это интервью)
- System Design - проектирование простенького сервиса (вот пост про это интервью)
Если результаты будут классными, то о ЗП мы договоримся.
Если вакансия заинтересовала, то пишите мне в личку
#Vacancy #SRE #Career
У меня есть отличная вакансия напрямую ко мне в команду в качестве Principal Engineer, который будет моим замом по инженерным активностям на уровне моего подразделения в 1к человек. Сразу скажу, что подразделение разделено на 4 управления и 1 отдел, в которых эти вопросы тоже отдельно прорабатываются, но мне нужен мой зам, чтобы курировать развитие важных тем и отслеживать движение по ним. Теперь подробнее по направлениям
1) Observability & reliability
На самом деле в моей концепции мира сами технические директора управлений отвечают за observability и надежность сервисов своих команд, но нужна централизация, так как
- у нас есть стандартные подходы к логам/метрикам/алертам - это наша observability платформа Sage
- у нас есть стандартные подходы к классификации сервисов по критичности и измерению их SLA - это наша платформа SLAser, в которой заводятся SLI/SLO/SLA и которая умеет расчитывать их соблюдения на основе данных в Prometheus
- у нас есть подход к работе с инцидентами и инструменты для автоматического их заведения и линковки между собой
Задача моего зама в том, чтобы знать про все эти инструменты, понимать как они связаны между собой, как ими пользоваться, а также помогать командам в моей зоне ответственности повысить свой уровень зрелости в области observability и reliability путем использования стандартных инструментов.
2) Capacity management
У нас есть стандартный процесс для управления мощностями, который требует активного планирования того, сколько потребуется ресурсов для наших сервисов в будущем. Так как у нас гибридное облако, то надо уметь планировать и inhouse мощности и мощности в публичных облаках, круто, что наша IDP (internal developer platform) умеет работать и inhouse и в public cloud, спасибо коллегам из Coretech. Интересно, что capacity planning - это зона технических руководителей управлений в моем подразделении, но мне нужен централизованный guidance от моего зама за тем, что все идет по плану (который мы обсуждаем с руководителями) + если есть проблемы, то их может разрулить мой зам
3) Migrations and EOL
У нас есть централизованный процесс миграций в нашем ИТ, который зачастую создает много работы для руководителей. Если миграция инициирована извне подразделения, то требуется понять как она аффектит нас и как уложится в целевые сроки и скоординировать все команды внутри. Для этого требуется зачастую крутой инженер, который понимает суть миграции и то, что она задевает внутри. Собственно, мой зам будет отвечать за эту координацию
4) Scalability
Компания активно растет последние годы, у нас в процессе много проектов по улучшению возможностей масштабирования наших систем под новые нагрузки. У меня есть зам по архитектуре, Антон, который отвечает за этот проект как в моем подразделении, так и на уровне все компании. Но и для моего зама по инженерным активностям найдется в этом проекте работа.
На самом деле есть еще большое количество интересных активностей, с которыми такой кандидат сможет мне помочь, но лучше двинуться дальше и ответить на вопрос "А что случилось с предшественником?", который у меня возникает, когда ищут кого-то на интересную позицию. Ответ в том, что мой коллега на этой позиции работал со мной 6 лет и работал хорошо, а потом решил переехать в солнечные края. Игорь - большой молодец и мне будет его нехватать, но теперь я ищу "нового Игоря":)
Если вам интересна вакансия, то дальше нам надо будет познакомиться, а дальше будет прохождение технических интервью, о многих из которых я уже рассказывал
- Общие инженерные вопросы - вопросы в форме блица про сети, работу компьютера, операционные системы, базы данных
- Алгоритмы и структуры данных - решение алгоритмических задач с написанием кода
- Troubleshooting - работа над инцидентом в типовой системе (вот пост про это интервью)
- System Design - проектирование простенького сервиса (вот пост про это интервью)
Если результаты будут классными, то о ЗП мы договоримся.
Если вакансия заинтересовала, то пишите мне в личку
#Vacancy #SRE #Career
👍17🔥13❤9🤔1
Consistency Tradeoffs in Modern Distributed Database System Design (или whitepaper про PACELC)
Продолжая серию постов про консистентность (CAP теорема, ее доказательство), я расскажу про whitepaper 2012 года от Daniel J. Abadi с расширением CAP теоремы до PACELC (читается как [pass-elk]). Суть этой статьи звучит так
Фокус CAP теоремы на поведении распределенной системы во время разделения сети. Но большую часть времени система работает в состоянии, когда с сетью все в порядке. Поэтому интересно оценить а какоой tradeoff в этом случае. И это оказывается треугольник "consistency, availability, and latency", который автор упрощает до пары consistency и latency, так как
Дальше автор выводит необходимость репликации данных из требования высокой доступности и вероятности сбоев в распределенной системе. Он делает это от противного, то есть если этого не делать, то при достаточно долгом времени работы системы один из компонентов системы выйдет из строя, его данные будут потеряны, а это эффективно приведет к их недоступности.
Дальше автор рассматривает варианты репликации данных
1) Здесь отправка обновлений происходит на все ноды. Есть два варианта
- a. Pre-processing слоя нет - тут будет нарушена консистентность (линеаризуемость) из определения Gilbert and Lynch (из уже упоминавшегося доказательства CAP теоремы).
- b. Такой слой есть - время уйдет на координацию узлов, если их много, а если узел в препроцессинге один, то мы будем тратить время на пересылку запросов к нему, что в гео-распределенной системе может быть затратно.
2) Здесь мы имеем мастер-ноду (для разных элементов данных у нас могут быть разные мастера). И в эту мастер-ноду летят все запросы на обновление, которые она выполняет и эффективно определяет порядок операций, который един для всех реплик. Здесь есть 3 возможности для репликации
1. Синхронная репликация - при апдейте мы ждем пока все реплики обновятся. Это консистентно, но увеличивает latency
2. Асинхронная репликация - тут мы обычно прихраниваем update в persistent storage, но успешной репликации не ждем и подтверждаем операцию. Дальше интересно посмотреть как мы читаем данные в этом случае
- a. Если мы читаем с мастера, то мы не имеем проблем с consistency, но latency может быть большим, так как мастер далеко. Плюс при высокой нагрузке на мастер мы тоже получим проблемы с latency.
- b. Если мы читаем с реплик, то потенциально может прочитать устаревшие данные
3. Комбинация синхронное и асинхронной - по-факту, это что-то из серии tunable consistency в Cassandra, где можно указывать кворум на запись и на чтение
3) Тут похоже на второй пункт, но мы отправляем обновления не в определенный мастер для конкретного элемента, а на произвольную ноду. Проблемы с consistency и latency здесь похожи на те, что во втором пункте.
Дальше автор разбирает как эти tradeoffs работают в популярных на то время базах данных: Dynamo, Cassandra, PNUTS, Riak, ... и делается вывод, что дизайн решения в базах зачастую больше фокусируются на consistency/latency в условиях нормальной работы, а не на consistency/availability в условиях наступления partition. И дальше автор предлагает переписать CAP в PACELC с примерно такой формулировкой
#Software #Architecture #DistributedSystems #SystemDesign
Продолжая серию постов про консистентность (CAP теорема, ее доказательство), я расскажу про whitepaper 2012 года от Daniel J. Abadi с расширением CAP теоремы до PACELC (читается как [pass-elk]). Суть этой статьи звучит так
The CAP theorem’s impact on modern distributed database system design is more limited than is often perceived. Another tradeoff—between consistency and latency—has had a more direct influence on several well-known DDBSs. A proposed new formulation, PACELC, unifies this tradeoff with CAP.
Фокус CAP теоремы на поведении распределенной системы во время разделения сети. Но большую часть времени система работает в состоянии, когда с сетью все в порядке. Поэтому интересно оценить а какоой tradeoff в этом случае. И это оказывается треугольник "consistency, availability, and latency", который автор упрощает до пары consistency и latency, так как
Availability and latency are arguably the same thing: an unavailable system essentially provides extremely high latency
Дальше автор выводит необходимость репликации данных из требования высокой доступности и вероятности сбоев в распределенной системе. Он делает это от противного, то есть если этого не делать, то при достаточно долгом времени работы системы один из компонентов системы выйдет из строя, его данные будут потеряны, а это эффективно приведет к их недоступности.
Дальше автор рассматривает варианты репликации данных
1. Data updates sent to all replicas at the same time
2. Data updates sent to an agreed-upon location first
3. Data updates sent to an arbitrary location first
1) Здесь отправка обновлений происходит на все ноды. Есть два варианта
- a. Pre-processing слоя нет - тут будет нарушена консистентность (линеаризуемость) из определения Gilbert and Lynch (из уже упоминавшегося доказательства CAP теоремы).
- b. Такой слой есть - время уйдет на координацию узлов, если их много, а если узел в препроцессинге один, то мы будем тратить время на пересылку запросов к нему, что в гео-распределенной системе может быть затратно.
2) Здесь мы имеем мастер-ноду (для разных элементов данных у нас могут быть разные мастера). И в эту мастер-ноду летят все запросы на обновление, которые она выполняет и эффективно определяет порядок операций, который един для всех реплик. Здесь есть 3 возможности для репликации
1. Синхронная репликация - при апдейте мы ждем пока все реплики обновятся. Это консистентно, но увеличивает latency
2. Асинхронная репликация - тут мы обычно прихраниваем update в persistent storage, но успешной репликации не ждем и подтверждаем операцию. Дальше интересно посмотреть как мы читаем данные в этом случае
- a. Если мы читаем с мастера, то мы не имеем проблем с consistency, но latency может быть большим, так как мастер далеко. Плюс при высокой нагрузке на мастер мы тоже получим проблемы с latency.
- b. Если мы читаем с реплик, то потенциально может прочитать устаревшие данные
3. Комбинация синхронное и асинхронной - по-факту, это что-то из серии tunable consistency в Cassandra, где можно указывать кворум на запись и на чтение
3) Тут похоже на второй пункт, но мы отправляем обновления не в определенный мастер для конкретного элемента, а на произвольную ноду. Проблемы с consistency и latency здесь похожи на те, что во втором пункте.
Дальше автор разбирает как эти tradeoffs работают в популярных на то время базах данных: Dynamo, Cassandra, PNUTS, Riak, ... и делается вывод, что дизайн решения в базах зачастую больше фокусируются на consistency/latency в условиях нормальной работы, а не на consistency/availability в условиях наступления partition. И дальше автор предлагает переписать CAP в PACELC с примерно такой формулировкой
If there is a partition (P), how does the system trade off availability and consistency (A and C); else (E), when the system is running normally in the absence of partitions, how does the system trade off latency (L) and consistency (C)?
#Software #Architecture #DistributedSystems #SystemDesign
Computer
Consistency Tradeoffs in Modern Distributed Database System Design: CAP is Only Part of the Story: Computer: Vol 45, No 2
The CAP theorem's impact on modern distributed database system design is more limited
than is often perceived. Another tradeoff—between consistency and latency —has had
a more direct influence on several well-known DDBSs. A proposed new formulation, ...
than is often perceived. Another tradeoff—between consistency and latency —has had
a more direct influence on several well-known DDBSs. A proposed new formulation, ...
❤10👍5🤔4👏2