SlideShare a Scribd company logo
1 of 45
Download to read offline
Программируемые
Деньги
Alexander
Chepurnoy
IOHK Research
Деньги сейчас: достаточно быть рядом!
Защищаем Криптографией!
pubkey_A
Что, если хочется сложной логики?
Например, дать ребенку деньги, которые
можно потратить лишь в школьной
столовой, и не больше N за день.
Что, если хочется сложной логики?
Например, создать крипто-монету,
которая уйдет семье или на резервный
адрес, если ее не трогать N лет
(цифровое наследство или защита от
потери ключа).
Что, если хочется сложной логики?
Сделать “краудфандинг” без посредника,
то есть выпустить монету, которую проект
может потратить лишь собрав
определенное количество денег до
указанного срока (после этого монету
может потратить лишь жертвующий).
Решение:
Защитить монету программной логикой!
Транзакции в Bitcoin
Bitcoin Script: Пример P2PKH
Монета защищена программой на стековом языке,
тратится программой на том же языке. Тратящий
скрипт склеивается с защищающим, исполняется,
результат true или false
Output script (proposition):
OP_DUP
OP_HASH160
<pubKeyHash>
OP_EQUALVERIFY
OP_CHECKSIG
Input script (proof):
<sig>
<pubkey>
Поработаем Интерпретатором!
<sig>
<pubkey>
OP_DUP
OP_HASH160
<pubKeyHash>
OP_EQUALVERIFY
OP_CHECKSIG
Stack:
Исполняем #1
pubkey
sig
(pubkey)
(sig)
OP_DUP
OP_HASH160
<pubKeyHash>
OP_EQUALVERIFY
OP_CHECKSIG
Stack:
Исполняем #2
pubkey
pubkey
sig
(OP_DUP)
OP_HASH160
<pubKeyHash>
OP_EQUALVERIFY
OP_CHECKSIG
Stack:
Исполняем #3
pubkeyhash
pubkey
sig
(OP_HASH160)
<pubKeyHash>
OP_EQUALVERIFY
OP_CHECKSIG
Stack:
Исполняем #4
pubKeyHash
pubkeyhash
pubkey
sig
(<pubKeyHash>)
OP_EQUALVERIFY
OP_CHECKSIG
Stack:
Исполняем #5
pubkey
sig
(OP_EQUALVERIFY)
OP_CHECKSIG
Stack:
Исполняем #6
true
(OP_CHECKSIG)
Stack:
Мы вовлекаем в качестве аргумента также байты транзакции!
Исполнение:
Программа принимает на вход несколько
переменных контекста (байты тратящей
транзакции, и “текущее время” в виде
номера блока и времени текущего блока,
указанного майнером).
Исполнение:
Ограничено по времени конструкцией
языка(нет циклов) и лимитом на размер
программы (10 000 байт)
Очень много инструкций были
отключены после DoS атак.
Исполнение:
Должно быть завершено за
фиксированное время.
В блоке 2000-3000 транзакций (~5000
выходов), если их валидация будет
занимать много времени, начнутся
проблемы на уровне консенсуса.
Ethereum: уберем лимиты!
Ethereum:
● Вместо монет – долгоживущие аккаунты
● Аккаунт может быть под контролем
человека или кода(контракта)
● Простая валидация транзакций(проверка
ECDSA подписи)
● Транзакция может создать новый
контракт или отправить сообщение +
деньги из одного аккаунта в другой
Умный Контракт
Ethereum:
Можно исполнять произвольной сложности
код, пока на это есть деньги (“газ”, оплата за
каждую исполненную операцию).
Но есть установленный майнером лимит
стоимости!
Умные Контракты
Ethereum
“Decentralized World Computer” => “Replicated Programmable Calculator”
Размноженный на тысячах
машин по всему свету!
Проблемы Ethereum:
● Ошибки в контрактах: DAO (~$150M) и другие
● DoS-атаки (из-за неправильной стоимости
инструкций)
● Атаки со стороны майнеров: можно включать
сложный код забесплатно, тормозя
соперников(или вынуждая их пропускать
валидацию блока)
● Невозможность работы контракта, если
установленный майнером потолок сложности
слишком низкий (пример: Ambisafe осенью 2016)
Replicated Virtual Machine vs
Programmable Money
У обоих подходов много ограничений и проблем. Как
мы можем иметь более мощный язык для
программируемых денег с гарантиями исполнения за
фиксированное время?
Authenticated Languages
• BitAuth2017
• DEX (Bitcoin Script в виде языка подобного Lisp)
• W3C
https://www.w3.org/2016/04/blockchain-workshop/interest/allen-todd-shea.
html
• Smarter Signatures (positional paper from Rebooting Web of Trust 2016)
Дверь
Если идет дождь, то дверь может открыть и Петя, иначе
только я.
(is_rain / dlog_g xPetya
) / dlog_g xmine
is_rain = true: dlog_g xPetya
/ dlog_g xmine
is_rain = false: dlog_g xmine
Язык Σ–State
Гибридный язык логических предикатов, состоящий из
двух подъязыков:
● предикаты над общим контекстом (“дождь идет”, h > 3)
● утверждения о публичный отображениях секретной
информации (“криптоязык”)
Криптоязык
dlog_g x – докажи знание такого w, что
gw
= x
без предъявления секрета w
Криптоязык
● Можно доказывать утверждения произвольной
сложности, но неэффективно
● Мы выбираем класс эффективных
протоколов, Σ–протоколы
● Доказываемые через Σ–протоколы
утверждения могут объединяться логическими
связками /, /, k-из-n
● Единая схема преобразования в цифровую
подпись
Теория
● Ivan Damgard „On Sigma Protocols“
● Yehuda Lindell, Carmit Hazay „Efficient Secure Two-Party
Protocols: Techniques and Constructions“ (Book)
● Yehuda Lindell „Sigma Protocols and Zero Knowledge“
http://www.youtube.com/watch?v=nwsmG3S9wIc
Генерация доказательства
object
Context
(дождь идет)
Secrets
(прив. ключ)
program
Prover (Петр)
Proof (подпись)
Проверка:
object
program
Context
(дождь идет)
Interpreter (Дверь)
Proof
(подпись)
True/False
∧ ∧
∨
h < 5 dlogg
x1
h ≥ 5 dlogg
x2
h=4
dlogg
x1
Пример
“Bitcoin on Steroids”: Легкий Способ
Bitcoin: общим контекстом являются
байты тратящей транзакции, также
номер блока и его время
Расширим: включим в него саму
программу и номер блока, в котором
была создана монета, также
создаваемые тратящей транзакцией
монеты.
Краудфандинг
• (height >= 100 / dlog_g x1) / (height < 100 /
tx.has_output(amount >= 100000, proposition
= dlog_g x2)
“output could be spent by a crowdfunding
transaction if it pays at least 100000 tokens to
x2 public key holder raising funds before block
#100, or getting back to backer key x1 after
that”
Расширяемость
Можно расширять криптоязык на лету, описывая
блоки криптоязыка на более низкоуровневом
языке, например, ZKPDL (Meiklejohn et al. USENIX
SECURITY’2010)
ZKPDL
Что есть:
● Построение и трансформация
деревьев из логических утверждений
● Редукция в крипто-дерево (в 7 фаз)
● Генерация и проверка доказательств
для dlog_g и /
● Примеры краудфандинга и демереджа
Осталось:
Больше примеров
Больше Σ-протоколов, /
Анализ стоимости
Как мы можем расширить язык (память монет,
глобальные связи монет)
Добро Пожаловать!
● https://github.com/ScorexFoundation/sigmastate-interpreter
● Scala
● Все еще очень сыро )
● kushti@protonmail.ch
Выводы:
● У нас есть защищенные программной логикой
монеты и умные контракты
● В обоих направлениях большой фронт работ!
● Хорошо бы понять, как они соотносятся между
собой
Вопросы?
@chepurnoy
kushti@protonmail.ch

More Related Content

Similar to "Программируемые деньги" Чепурной Александр, IOHK Research

Знакомство с Ethereum virtual machine
Знакомство с Ethereum virtual machineЗнакомство с Ethereum virtual machine
Знакомство с Ethereum virtual machineSergey Lonshakov
 
Разработка на блокчейн Голос | Ерлан Шиндаулетов
Разработка на блокчейн Голос | Ерлан ШиндаулетовРазработка на блокчейн Голос | Ерлан Шиндаулетов
Разработка на блокчейн Голос | Ерлан ШиндаулетовCyber Fund
 
Масштабирование Блокчейн Сетей
Масштабирование Блокчейн СетейМасштабирование Блокчейн Сетей
Масштабирование Блокчейн СетейEugene Aseev
 
Python-технология которую легко продавать!
Python-технология которую легко продавать!Python-технология которую легко продавать!
Python-технология которую легко продавать!Aleksey Nakorenko
 
PLC Presenatation
PLC PresenatationPLC Presenatation
PLC PresenatationJTGroup
 
PHDays 2012: Future Now
PHDays 2012: Future NowPHDays 2012: Future Now
PHDays 2012: Future NowDmitry Evteev
 
Hakr 5 14-myjurnal.ru
Hakr 5 14-myjurnal.ruHakr 5 14-myjurnal.ru
Hakr 5 14-myjurnal.ruVasya Pupkin
 
Практическое использование средств криптографии в .NET, Java и PHP
Практическое использование средств криптографии в .NET, Java и PHPПрактическое использование средств криптографии в .NET, Java и PHP
Практическое использование средств криптографии в .NET, Java и PHPVladimir Kochetkov
 
Защита и контроль приложений
Защита и контроль приложенийЗащита и контроль приложений
Защита и контроль приложенийCisco Russia
 
Protecting your mobile game from the most common hacks
Protecting your mobile game from the most common hacksProtecting your mobile game from the most common hacks
Protecting your mobile game from the most common hacksDevGAMM Conference
 
Devconf 2014 Трассировка событий при логировании
Devconf 2014 Трассировка событий при логированииDevconf 2014 Трассировка событий при логировании
Devconf 2014 Трассировка событий при логированииAlex Popov
 
#MBLTdev: Знакомство с codesign (e-Legion)
#MBLTdev: Знакомство с codesign (e-Legion)#MBLTdev: Знакомство с codesign (e-Legion)
#MBLTdev: Знакомство с codesign (e-Legion)e-Legion
 
Производительность Unity3D: подводные камни / Алексей Чубарь (BIT.GAMES)
Производительность Unity3D: подводные камни / Алексей Чубарь (BIT.GAMES)Производительность Unity3D: подводные камни / Алексей Чубарь (BIT.GAMES)
Производительность Unity3D: подводные камни / Алексей Чубарь (BIT.GAMES)Ontico
 
Безопасность для сайта
Безопасность  для сайтаБезопасность  для сайта
Безопасность для сайтаMaksym Balaklytskyi
 
Погружение в Ethereum
Погружение в EthereumПогружение в Ethereum
Погружение в EthereumSergey Lonshakov
 

Similar to "Программируемые деньги" Чепурной Александр, IOHK Research (20)

Знакомство с Ethereum virtual machine
Знакомство с Ethereum virtual machineЗнакомство с Ethereum virtual machine
Знакомство с Ethereum virtual machine
 
Разработка на блокчейн Голос | Ерлан Шиндаулетов
Разработка на блокчейн Голос | Ерлан ШиндаулетовРазработка на блокчейн Голос | Ерлан Шиндаулетов
Разработка на блокчейн Голос | Ерлан Шиндаулетов
 
Масштабирование Блокчейн Сетей
Масштабирование Блокчейн СетейМасштабирование Блокчейн Сетей
Масштабирование Блокчейн Сетей
 
Python-технология которую легко продавать!
Python-технология которую легко продавать!Python-технология которую легко продавать!
Python-технология которую легко продавать!
 
PLC Presenatation
PLC PresenatationPLC Presenatation
PLC Presenatation
 
PHDays 2012: Future Now
PHDays 2012: Future NowPHDays 2012: Future Now
PHDays 2012: Future Now
 
Hakr 5 14-myjurnal.ru
Hakr 5 14-myjurnal.ruHakr 5 14-myjurnal.ru
Hakr 5 14-myjurnal.ru
 
Практическое использование средств криптографии в .NET, Java и PHP
Практическое использование средств криптографии в .NET, Java и PHPПрактическое использование средств криптографии в .NET, Java и PHP
Практическое использование средств криптографии в .NET, Java и PHP
 
Blockchain & Ecommerce (part 1)
Blockchain & Ecommerce (part 1)Blockchain & Ecommerce (part 1)
Blockchain & Ecommerce (part 1)
 
Защита и контроль приложений
Защита и контроль приложенийЗащита и контроль приложений
Защита и контроль приложений
 
Protecting your mobile game from the most common hacks
Protecting your mobile game from the most common hacksProtecting your mobile game from the most common hacks
Protecting your mobile game from the most common hacks
 
Devconf 2014 Трассировка событий при логировании
Devconf 2014 Трассировка событий при логированииDevconf 2014 Трассировка событий при логировании
Devconf 2014 Трассировка событий при логировании
 
#MBLTdev: Знакомство с codesign (e-Legion)
#MBLTdev: Знакомство с codesign (e-Legion)#MBLTdev: Знакомство с codesign (e-Legion)
#MBLTdev: Знакомство с codesign (e-Legion)
 
Case project
Case projectCase project
Case project
 
Производительность Unity3D: подводные камни / Алексей Чубарь (BIT.GAMES)
Производительность Unity3D: подводные камни / Алексей Чубарь (BIT.GAMES)Производительность Unity3D: подводные камни / Алексей Чубарь (BIT.GAMES)
Производительность Unity3D: подводные камни / Алексей Чубарь (BIT.GAMES)
 
php frameworks
php frameworksphp frameworks
php frameworks
 
Smart Contracts
Smart ContractsSmart Contracts
Smart Contracts
 
Безопасность для сайта
Безопасность  для сайтаБезопасность  для сайта
Безопасность для сайта
 
Погружение в Ethereum
Погружение в EthereumПогружение в Ethereum
Погружение в Ethereum
 
ico
ico ico
ico
 

More from it-people

«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Co
«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Co«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Co
«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Coit-people
 
«Scrapy internals» Александр Сибиряков, Scrapinghub
«Scrapy internals» Александр Сибиряков, Scrapinghub«Scrapy internals» Александр Сибиряков, Scrapinghub
«Scrapy internals» Александр Сибиряков, Scrapinghubit-people
 
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrainsit-people
 
«Gevent — быть или не быть?» Александр Мокров, Positive Technologies
«Gevent — быть или не быть?» Александр Мокров, Positive Technologies«Gevent — быть или не быть?» Александр Мокров, Positive Technologies
«Gevent — быть или не быть?» Александр Мокров, Positive Technologiesit-people
 
«Ещё один Поиск Яндекса» Александр Кошелев, Яндекс
«Ещё один Поиск Яндекса» Александр Кошелев, Яндекс«Ещё один Поиск Яндекса» Александр Кошелев, Яндекс
«Ещё один Поиск Яндекса» Александр Кошелев, Яндексit-people
 
«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...
«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...
«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...it-people
 
«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalr
«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalr«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalr
«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalrit-people
 
«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...
«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...
«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...it-people
 
«Тотальный контроль производительности» Михаил Юматов, ЦИАН
«Тотальный контроль производительности» Михаил Юматов, ЦИАН«Тотальный контроль производительности» Михаил Юматов, ЦИАН
«Тотальный контроль производительности» Михаил Юматов, ЦИАНit-people
 
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банкit-people
 
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Coit-people
 
«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНС
«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНС«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНС
«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНСit-people
 
«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...
«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...
«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...it-people
 
«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologies
«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologies«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologies
«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologiesit-people
 
«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn System
«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn System«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn System
«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn Systemit-people
 
«(Без)опасный Python», Иван Цыганов, Positive Technologies
«(Без)опасный Python», Иван Цыганов, Positive Technologies«(Без)опасный Python», Иван Цыганов, Positive Technologies
«(Без)опасный Python», Иван Цыганов, Positive Technologiesit-people
 
«Python of Things», Кирилл Борисов, Яндекс
«Python of Things», Кирилл Борисов, Яндекс«Python of Things», Кирилл Борисов, Яндекс
«Python of Things», Кирилл Борисов, Яндексit-people
 
«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...
«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...
«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...it-people
 
«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognician
«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognician«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognician
«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognicianit-people
 
«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...
«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...
«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...it-people
 

More from it-people (20)

«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Co
«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Co«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Co
«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Co
 
«Scrapy internals» Александр Сибиряков, Scrapinghub
«Scrapy internals» Александр Сибиряков, Scrapinghub«Scrapy internals» Александр Сибиряков, Scrapinghub
«Scrapy internals» Александр Сибиряков, Scrapinghub
 
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains
 
«Gevent — быть или не быть?» Александр Мокров, Positive Technologies
«Gevent — быть или не быть?» Александр Мокров, Positive Technologies«Gevent — быть или не быть?» Александр Мокров, Positive Technologies
«Gevent — быть или не быть?» Александр Мокров, Positive Technologies
 
«Ещё один Поиск Яндекса» Александр Кошелев, Яндекс
«Ещё один Поиск Яндекса» Александр Кошелев, Яндекс«Ещё один Поиск Яндекса» Александр Кошелев, Яндекс
«Ещё один Поиск Яндекса» Александр Кошелев, Яндекс
 
«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...
«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...
«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...
 
«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalr
«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalr«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalr
«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalr
 
«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...
«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...
«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...
 
«Тотальный контроль производительности» Михаил Юматов, ЦИАН
«Тотальный контроль производительности» Михаил Юматов, ЦИАН«Тотальный контроль производительности» Михаил Юматов, ЦИАН
«Тотальный контроль производительности» Михаил Юматов, ЦИАН
 
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк
 
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co
 
«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНС
«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНС«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНС
«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНС
 
«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...
«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...
«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...
 
«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologies
«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologies«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologies
«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologies
 
«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn System
«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn System«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn System
«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn System
 
«(Без)опасный Python», Иван Цыганов, Positive Technologies
«(Без)опасный Python», Иван Цыганов, Positive Technologies«(Без)опасный Python», Иван Цыганов, Positive Technologies
«(Без)опасный Python», Иван Цыганов, Positive Technologies
 
«Python of Things», Кирилл Борисов, Яндекс
«Python of Things», Кирилл Борисов, Яндекс«Python of Things», Кирилл Борисов, Яндекс
«Python of Things», Кирилл Борисов, Яндекс
 
«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...
«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...
«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...
 
«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognician
«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognician«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognician
«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognician
 
«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...
«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...
«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...
 

"Программируемые деньги" Чепурной Александр, IOHK Research