SlideShare a Scribd company logo
1 of 72
Download to read offline
Пора учить WebGL
Антон Корзунов, tk-conf, 8 октября, Ростов.
Немного о себе
〉В 1998 году появилась
первая видеокарта.
〉В 1999 - вторая.
〉Достаточно активный
пользователь gamedev.ru.
〉Потом женился и оброс.
〉В 2008 году бросил
openglить.
〉Последние 5 лет работаю в
Яндексе.
3
Каждой истории нужна завязка
〉В последнее время Flash
покидает наши просторы.
〉Все сайты mobile-friendly,
html5-only.
〉Сплошной react и никакой
анимации.
4
И вот завязка…
5
7http://www.apple.com/iphone-7/ Видеовставка
Все внимание на «блик»!
Transforming-n-Lighting
〉С желания добавить немного
«света» и началось
производство «ускорителей»
〉Они это умеют делать, очень
легко и просто*.
8
9https://threejs.org/examples/webgl_lights_pointlights.html Видеовставка
Свет это очень просто!
loader.load( «obj/walt/WaltHead_bin.js");


sphere = new THREE.SphereGeometry( 0.5, 16, 8 );

light1 = new THREE.PointLight( 0xff0040, 2, 50 );

scene.add( light1 );

. . .
renderer = new THREE.WebGLRenderer();
. . .
renderer.render( scene, camera );
10http://www.apple.com/iphone-7/
Но что же сделала Apple?
У Apple более «ламповое» решение
〉Key-frame анимания
〉Image diff
〉Pure Canvas
〉30 мегабайт
〉Работает через раз….
11
Polo Volkswagen Dr Mach LED 2 MC
12https://geektimes.ru/post/280326/ Видеовставка
Ведь можно было ПРОЩЕ!
Темные века закончились
〉WebGL – быстрее.
〉WebGL – умнее.
〉WebGL – вкуснее.
13
Dawn, фея лесов NVidia
14https://www.shadertoy.com/view/Msl3Rr Видеовставка
5555 байт
WebGL – способ связи с
видеокартой.
16
Как это работает?
Application Layer
Hardware
17
Как это работает?
Application Layer
Hardware
HAL
18
Как это работает?
Application Layer
Hardware
HAL
OpenGL, DirectX
19
Как это работает?
Application Layer
Hardware
HAL
OpenGL, DirectX
WebGL
20
Как это работает?
Application Layer
Hardware
HAL
OpenGL, DirectX
WebGL
Angle
Browser
ThreeJS, Blend4Web…
21Про gamedev – не шутка.
Ваши помощники:
Blend4Web Unity PlayCanvas GooCreate
ThreeJS BabylonJS Stack.gl gamedev.ru
22
Как это на самом деле работает?
Кривые руки
Вообще непонятно что
Костыли
Костыли (Metal, Vulcan)
WebGL
Костыли
Костыли
Костыли
«Yes, You Should Learn Vanilla JavaScript Before Fancy JS
Frameworks» гласит:
«При разработке любого продукта
настанет такой день, когда что-то начнет
работать не так, как ожидалось, и вы не
будете знать почему»
23https://snipcart.com/blog/learn-vanilla-javascript-before-using-js-frameworks
Да, следовало бы учить JavaScript до..
Ничего страшного в этом нет.
Писать на WebGL, а не на
ThreeJS – то же самое,
что использовать
VanillaJS, а не React.
Hello, World!
https://events.yandex.ru/lib/talks/3344/
Ренессанс графики на
клиенте
http://www.slideshare.net/theKashey/ss-66459351
25
Все это уже было!
26https://www.youtube.com/watch?v=3tlTMJCyEnk
Технологии освещения в играх
Всего за час вы узнаете….
Radiosity Normal Mapping Basis, Directional
Lightmaps (Lightmass, Beast), Spherical
Gaussian Lightmaps, Light Probes, Enlighten,
Distance Field Ambient Occlusion, Vertex
Lighting, Light Propagation Volumes, Virtual
Point Lights, Imperfect Shadow Maps, Path
Tracing, Photon Mapping, SSAO, HBAO, HDAO,
Lighting Deep G-Buffer, SSDO, Image Based
Ligthting, Cascaded Shadow Maps, Reflective
Shadow Maps, VXGI, SVOGI, Voxel Cone
Tracing, Approximate Hybrid Raytracing,
Capsule Shadows.
27
3D – хаки, обманы, иллюзии
〉Графика – это математика.
〉Реальные модели слишком
долго считаются
〉В общем, все как в
современной верстке.
28
50 оттенков WebGL
〉Полигональный WebGL
〉WebGL для энтузиастов
〉WebGL со странностями
〉Наукоемкий WebGL
〉ThreeJS (не WebGL)
29
Наш опыт работы с WebGL
〉Где-то в 2011 году мы его
откопали.
〉Intel видеокарта моего ноута
была blacklisted.
〉Завелся только под
OperaMobile на телефоне.
〉В итоге закопали.
30
Нельзя просто взять и WebGL
〉IE 9-10 заявляли что webgl
это большая дыра в
безопасности. (и были правы).
〉Safari просто чего-то ждал.
31
Как на картинах Босха
Но в любом случае нам было
что поделать все это время…
32
Сад наслаждений, Босх
WebGL сейчас
〉Геометрия
〉Отрисовка растровых слоев
〉Панорамы
33
Как говорил Пифагор…
Геометрия
35
Какая между ними разница?
Как нарисовать линию?
SVG – <path d=…
Canvas – moveTo/lineTo
ThreeJS – new THREE.Line..
WebGL – ?
36
Как нарисовать полигон?
SVG – <path d=…
Canvas – moveTo/lineTo
ThreeJS – Shape/Mesh
WebGL – ?
37
38
Все состоит из треугольников
И они могут быть любыми!
〉Треугольник только создает
область под закраску.
〉В этой области можно
нарисовать что-то другое.
〉Например ничего.
39
Bill Cipher, by AbnormallyNice
40http://www.goodboydigital.com/pixi-webgl-primitives/
Не все так просто.
KEEP CALM AND INVENT ON!
Чтобы отрисовать линию
требуется:
〉Справочник Линейной Алгебры
〉Не совсем здравое мышление
〉Критический взгляд на мир..
〉И много свободного времени.
41
Тоторо во имя добра, Всеволод Шмыров
А каково браузеру?
〉«Аппаратно-ускоренный»
canvas, вынужден каждый раз
повторять все эти странные
операции с нуля!
〉В итоге SVG иногда быстрее.
〉Еще быстрее Three.js, потому
что WebGL.
〉А «ваш» WebGL – космос!
42
http://alboardman.tumblr.com/post/103042705161/welcome-to-the-machine
PROfit?
〉Четко разделяет все на
«загрузку», «процессинг» и
«рендер»
〉Рендер будет таким, какой
придумаете.
43
Наконец!
Cons?!
44
С геометрией закончим
Отрисовка растра
Основа карты – растровые слои.
Ну что сложного может быть в
задаче нарисовать
КАРТИНКИ??
46
47
Это карта. Она как пирог.
Тайны, что хранят тайлы
〉Тайлы должны красиво
«блендиться».
〉Прозрачные тайлы содержат
«ничего».
〉Тайлы бывают разного
размера.
〉Тайлы можно по разному
«батчить».
48
Texture Atlas
〉Тайлы берутся из TA
4096x4096(х2).
〉На прозрачных тайлах alpha
test.
〉Все думаем о склейке слоев.
〉PS: Один тайл на iPhone 6-7
Plus - 728px.
49
Back-to-front rendering
1. Нативный для canvas, html.
2. Высокий overdraw.
3. Низкая скорость.
4. Зачем он вообще нужен?
50
Z-Index
1. Front-to-back rendering.
2. Никаких сортировок.
3. Решение для 3Д.
4. Которое и в «2Д» работает.
51
52Видеовставка
Карты было:
53Видеовставка
Карты стало:
Profit?
〉Полностью контролируемый
рендеринг.
〉Возможность тонкой
оптимизации.
〉Меньше лагов, больше
скорость.
54
Cons?
〉Никакого speed-boost на
нормальном компе. Выше 60
FPS не прыгнуть.
〉«Новые» алгоритмы можно и
для canvas использовать.
55
А вот и начало!
Панорамы!
Яндекс.Панорамы
〉Запустились в 2009 году.
〉В 2016 появился АПИ.
57
Но вот была проблема…
〉Панорамы были основаны на
технологии Flash.
〉Они отлично работали, и
никаких претензий к ним не
было.
〉Вот только Flash с нами не
везде….
58
http://dc.wikia.com/wiki/File:Black_Flash_0007.jpg
59
На самом деле это тоже все было
Секретный доклад API Яндекс.Карт
https://events.yandex.ru/lib/talks/3345/
Производительность WebGL-
приложений
https://events.yandex.ru/lib/talks/
3211/
API Панорам
недавно на FrontTalks
Как работают панорамы
〉Есть много файлов, с
«кривой картинкой»
〉Нужно их наложить на
«шарик»
60
True story :(
Панорамы можно
сделать только на Flash
или WebGL.
Profit?
〉Работают везде. От iPhone4
до SmartTV.
〉Работают плавно, быстро,
интересно.
〉Технически «панорамы»
можно сделать только на
Flash или WebGL.
〉На Canvas можно (мы
делали), но это боль.
62
Cons?
〉Не работают на компе
бабушки.
〉Не работают.
63
64
А мог быть и bluescreen.
А вот и конец
Так что в итоге!
66
67Nathan McCord, U.S. Marine Corps - http://www.defenseimagery.mil; VIRIN: 090812-M-7376M-073
Каменный век!
68Vector by Vector Open Stock
Вперед и с песней
WebGL помогает
〉Сделать быстрее.
〉Сделать.
69
Столовый набор «Супер-пупер» (Солонкус-3)
Студия Артемия Лебедева
Но есть одна проблема
〉Skia, SVG, Canvas, ThreeJS,
Babylon, PlayCanvas пишут
очень умные люди.
〉Там конечно много тупняка и
косяков, но далеко не факт
что у вас получится лучше.
〉Только это не WebGL, это
суррогаты.
70
Антон Корзунов
Разработчик интерфейсов АПИ карт.
Контакты
@twitter
thekasheykashey@yandex-team.ru
На фоне https://www.shadertoy.com/view/4tjGRh
72https://www.shadertoy.com/view/XsBXWt

More Related Content

Viewers also liked

The Power of WebGL - Hackeando sua GPU com JavaScript
The Power of WebGL - Hackeando sua GPU com JavaScriptThe Power of WebGL - Hackeando sua GPU com JavaScript
The Power of WebGL - Hackeando sua GPU com JavaScriptRaphael Amorim
 
3D in the Browser via WebGL: It's Go Time
3D in the Browser via WebGL: It's Go Time 3D in the Browser via WebGL: It's Go Time
3D in the Browser via WebGL: It's Go Time Pascal Rettig
 
WebGL: GPU acceleration for the open web
WebGL: GPU acceleration for the open webWebGL: GPU acceleration for the open web
WebGL: GPU acceleration for the open webpjcozzi
 
Introduction to WebGL and Three.js
Introduction to WebGL and Three.jsIntroduction to WebGL and Three.js
Introduction to WebGL and Three.jsJames Williams
 
Bringing Virtual Reality to the Web: VR, WebGL and CSS – Together At Last!
Bringing Virtual Reality to the Web: VR, WebGL and CSS – Together At Last!Bringing Virtual Reality to the Web: VR, WebGL and CSS – Together At Last!
Bringing Virtual Reality to the Web: VR, WebGL and CSS – Together At Last!FITC
 
Developing Web Graphics with WebGL
Developing Web Graphics with WebGLDeveloping Web Graphics with WebGL
Developing Web Graphics with WebGLTony Parisi
 
Introduction to computer graphics
Introduction to computer graphicsIntroduction to computer graphics
Introduction to computer graphicsKamal Acharya
 
ViziCities: Creating Real-World Cities in 3D using OpenStreetMap and WebGL
ViziCities: Creating Real-World Cities in 3D using OpenStreetMap and WebGLViziCities: Creating Real-World Cities in 3D using OpenStreetMap and WebGL
ViziCities: Creating Real-World Cities in 3D using OpenStreetMap and WebGLRobin Hawkes
 
WebGL and Three.js
WebGL and Three.jsWebGL and Three.js
WebGL and Three.jsyomotsu
 

Viewers also liked (10)

The Power of WebGL - Hackeando sua GPU com JavaScript
The Power of WebGL - Hackeando sua GPU com JavaScriptThe Power of WebGL - Hackeando sua GPU com JavaScript
The Power of WebGL - Hackeando sua GPU com JavaScript
 
3D in the Browser via WebGL: It's Go Time
3D in the Browser via WebGL: It's Go Time 3D in the Browser via WebGL: It's Go Time
3D in the Browser via WebGL: It's Go Time
 
WebGL: GPU acceleration for the open web
WebGL: GPU acceleration for the open webWebGL: GPU acceleration for the open web
WebGL: GPU acceleration for the open web
 
Introduction to WebGL and Three.js
Introduction to WebGL and Three.jsIntroduction to WebGL and Three.js
Introduction to WebGL and Three.js
 
Bringing Virtual Reality to the Web: VR, WebGL and CSS – Together At Last!
Bringing Virtual Reality to the Web: VR, WebGL and CSS – Together At Last!Bringing Virtual Reality to the Web: VR, WebGL and CSS – Together At Last!
Bringing Virtual Reality to the Web: VR, WebGL and CSS – Together At Last!
 
Developing Web Graphics with WebGL
Developing Web Graphics with WebGLDeveloping Web Graphics with WebGL
Developing Web Graphics with WebGL
 
Introduction to computer graphics
Introduction to computer graphicsIntroduction to computer graphics
Introduction to computer graphics
 
Introduction to Angularjs
Introduction to AngularjsIntroduction to Angularjs
Introduction to Angularjs
 
ViziCities: Creating Real-World Cities in 3D using OpenStreetMap and WebGL
ViziCities: Creating Real-World Cities in 3D using OpenStreetMap and WebGLViziCities: Creating Real-World Cities in 3D using OpenStreetMap and WebGL
ViziCities: Creating Real-World Cities in 3D using OpenStreetMap and WebGL
 
WebGL and Three.js
WebGL and Three.jsWebGL and Three.js
WebGL and Three.js
 

Similar to TК°Conf. Ещё не поздно учить WebGL. Антон Корзунов.

Как посчитать машинки, ничего не зная про нейронки
Как посчитать машинки, ничего не зная про нейронкиКак посчитать машинки, ничего не зная про нейронки
Как посчитать машинки, ничего не зная про нейронкиYauhen Kharuzhy
 
Ренессанс графики на клиенте
Ренессанс графики на клиентеРенессанс графики на клиенте
Ренессанс графики на клиентеAnton Korzunov
 
Правильная организация клиент-карточного взаимодействия — Антон Корзунов
Правильная организация клиент-карточного взаимодействия — Антон КорзуновПравильная организация клиент-карточного взаимодействия — Антон Корзунов
Правильная организация клиент-карточного взаимодействия — Антон КорзуновYandex
 
Машинное обучение в электронной коммерции — практика использования и подводны...
Машинное обучение в электронной коммерции — практика использования и подводны...Машинное обучение в электронной коммерции — практика использования и подводны...
Машинное обучение в электронной коммерции — практика использования и подводны...Ontico
 
Антон Корзунов "Графика на карте в API 2.0"
Антон Корзунов "Графика на карте в API 2.0"Антон Корзунов "Графика на карте в API 2.0"
Антон Корзунов "Графика на карте в API 2.0"Yandex
 
Нейронные сетки: покруче интернета
Нейронные сетки: покруче интернетаНейронные сетки: покруче интернета
Нейронные сетки: покруче интернетаAnatoly Levenchuk
 
Как сделать веб-карту, сохранить здоровье и возненавидеть IE
Как сделать веб-карту, сохранить здоровье и возненавидеть IEКак сделать веб-карту, сохранить здоровье и возненавидеть IE
Как сделать веб-карту, сохранить здоровье и возненавидеть IEАртём Кудзев
 
Игрушки на вырост. Программируем Lego-роботов
Игрушки на вырост. Программируем Lego-роботовИгрушки на вырост. Программируем Lego-роботов
Игрушки на вырост. Программируем Lego-роботовAlexander Kolotov
 
А.Левенчук -- предпринимательство: кейс NVIDIA
А.Левенчук -- предпринимательство: кейс NVIDIAА.Левенчук -- предпринимательство: кейс NVIDIA
А.Левенчук -- предпринимательство: кейс NVIDIAAnatoly Levenchuk
 
Как впихнуть утро в сосновом лесу в 4 килобайта. Иван Авдеев. UNIGINE Open Ai...
Как впихнуть утро в сосновом лесу в 4 килобайта. Иван Авдеев. UNIGINE Open Ai...Как впихнуть утро в сосновом лесу в 4 килобайта. Иван Авдеев. UNIGINE Open Ai...
Как впихнуть утро в сосновом лесу в 4 килобайта. Иван Авдеев. UNIGINE Open Ai...Unigine Corp.
 
Блеск и нищета современного ИИ, из истории кибернетики в СССР, философия ИИ -...
Блеск и нищета современного ИИ, из истории кибернетики в СССР, философия ИИ -...Блеск и нищета современного ИИ, из истории кибернетики в СССР, философия ИИ -...
Блеск и нищета современного ИИ, из истории кибернетики в СССР, философия ИИ -...Anton Moiseev
 
Генеративный дизайн. Личный опыт
Генеративный дизайн. Личный опытГенеративный дизайн. Личный опыт
Генеративный дизайн. Личный опытAndrew Shapiro
 
CUDA Course 2010 at MSU
CUDA Course 2010 at MSUCUDA Course 2010 at MSU
CUDA Course 2010 at MSUlarhat
 
Steel monkeys: Unity3D глазами программиста графики
Steel monkeys: Unity3D глазами программиста графикиSteel monkeys: Unity3D глазами программиста графики
Steel monkeys: Unity3D глазами программиста графикиDevGAMM Conference
 
Experience of Volume Rendering in Virtual Reality
Experience of Volume Rendering in Virtual RealityExperience of Volume Rendering in Virtual Reality
Experience of Volume Rendering in Virtual RealityAlexander Korshak
 
[JokerConf] Верхом на реактивных стримах, 10/13/2016
[JokerConf] Верхом на реактивных стримах, 10/13/2016[JokerConf] Верхом на реактивных стримах, 10/13/2016
[JokerConf] Верхом на реактивных стримах, 10/13/2016Viktor Gamov
 
Сергей Житинский, Александр Чистяков (Git in Sky)
Сергей Житинский, Александр Чистяков (Git in Sky)Сергей Житинский, Александр Чистяков (Git in Sky)
Сергей Житинский, Александр Чистяков (Git in Sky)Ontico
 
Олег Бартунов и Иван Панченко
Олег Бартунов и Иван ПанченкоОлег Бартунов и Иван Панченко
Олег Бартунов и Иван ПанченкоCodeFest
 
Применение в Enterprise-приложении графовой базы данных Neo4j - Антон Максимо...
Применение в Enterprise-приложении графовой базы данных Neo4j - Антон Максимо...Применение в Enterprise-приложении графовой базы данных Neo4j - Антон Максимо...
Применение в Enterprise-приложении графовой базы данных Neo4j - Антон Максимо...Dev2Dev
 
How to cook a blockchain and not get burned
How to cook a blockchain and not get burned How to cook a blockchain and not get burned
How to cook a blockchain and not get burned Alexander Syrotenko
 

Similar to TК°Conf. Ещё не поздно учить WebGL. Антон Корзунов. (20)

Как посчитать машинки, ничего не зная про нейронки
Как посчитать машинки, ничего не зная про нейронкиКак посчитать машинки, ничего не зная про нейронки
Как посчитать машинки, ничего не зная про нейронки
 
Ренессанс графики на клиенте
Ренессанс графики на клиентеРенессанс графики на клиенте
Ренессанс графики на клиенте
 
Правильная организация клиент-карточного взаимодействия — Антон Корзунов
Правильная организация клиент-карточного взаимодействия — Антон КорзуновПравильная организация клиент-карточного взаимодействия — Антон Корзунов
Правильная организация клиент-карточного взаимодействия — Антон Корзунов
 
Машинное обучение в электронной коммерции — практика использования и подводны...
Машинное обучение в электронной коммерции — практика использования и подводны...Машинное обучение в электронной коммерции — практика использования и подводны...
Машинное обучение в электронной коммерции — практика использования и подводны...
 
Антон Корзунов "Графика на карте в API 2.0"
Антон Корзунов "Графика на карте в API 2.0"Антон Корзунов "Графика на карте в API 2.0"
Антон Корзунов "Графика на карте в API 2.0"
 
Нейронные сетки: покруче интернета
Нейронные сетки: покруче интернетаНейронные сетки: покруче интернета
Нейронные сетки: покруче интернета
 
Как сделать веб-карту, сохранить здоровье и возненавидеть IE
Как сделать веб-карту, сохранить здоровье и возненавидеть IEКак сделать веб-карту, сохранить здоровье и возненавидеть IE
Как сделать веб-карту, сохранить здоровье и возненавидеть IE
 
Игрушки на вырост. Программируем Lego-роботов
Игрушки на вырост. Программируем Lego-роботовИгрушки на вырост. Программируем Lego-роботов
Игрушки на вырост. Программируем Lego-роботов
 
А.Левенчук -- предпринимательство: кейс NVIDIA
А.Левенчук -- предпринимательство: кейс NVIDIAА.Левенчук -- предпринимательство: кейс NVIDIA
А.Левенчук -- предпринимательство: кейс NVIDIA
 
Как впихнуть утро в сосновом лесу в 4 килобайта. Иван Авдеев. UNIGINE Open Ai...
Как впихнуть утро в сосновом лесу в 4 килобайта. Иван Авдеев. UNIGINE Open Ai...Как впихнуть утро в сосновом лесу в 4 килобайта. Иван Авдеев. UNIGINE Open Ai...
Как впихнуть утро в сосновом лесу в 4 килобайта. Иван Авдеев. UNIGINE Open Ai...
 
Блеск и нищета современного ИИ, из истории кибернетики в СССР, философия ИИ -...
Блеск и нищета современного ИИ, из истории кибернетики в СССР, философия ИИ -...Блеск и нищета современного ИИ, из истории кибернетики в СССР, философия ИИ -...
Блеск и нищета современного ИИ, из истории кибернетики в СССР, философия ИИ -...
 
Генеративный дизайн. Личный опыт
Генеративный дизайн. Личный опытГенеративный дизайн. Личный опыт
Генеративный дизайн. Личный опыт
 
CUDA Course 2010 at MSU
CUDA Course 2010 at MSUCUDA Course 2010 at MSU
CUDA Course 2010 at MSU
 
Steel monkeys: Unity3D глазами программиста графики
Steel monkeys: Unity3D глазами программиста графикиSteel monkeys: Unity3D глазами программиста графики
Steel monkeys: Unity3D глазами программиста графики
 
Experience of Volume Rendering in Virtual Reality
Experience of Volume Rendering in Virtual RealityExperience of Volume Rendering in Virtual Reality
Experience of Volume Rendering in Virtual Reality
 
[JokerConf] Верхом на реактивных стримах, 10/13/2016
[JokerConf] Верхом на реактивных стримах, 10/13/2016[JokerConf] Верхом на реактивных стримах, 10/13/2016
[JokerConf] Верхом на реактивных стримах, 10/13/2016
 
Сергей Житинский, Александр Чистяков (Git in Sky)
Сергей Житинский, Александр Чистяков (Git in Sky)Сергей Житинский, Александр Чистяков (Git in Sky)
Сергей Житинский, Александр Чистяков (Git in Sky)
 
Олег Бартунов и Иван Панченко
Олег Бартунов и Иван ПанченкоОлег Бартунов и Иван Панченко
Олег Бартунов и Иван Панченко
 
Применение в Enterprise-приложении графовой базы данных Neo4j - Антон Максимо...
Применение в Enterprise-приложении графовой базы данных Neo4j - Антон Максимо...Применение в Enterprise-приложении графовой базы данных Neo4j - Антон Максимо...
Применение в Enterprise-приложении графовой базы данных Neo4j - Антон Максимо...
 
How to cook a blockchain and not get burned
How to cook a blockchain and not get burned How to cook a blockchain and not get burned
How to cook a blockchain and not get burned
 

More from TKConf

TК°Conf. Как мы делали ЖЖ. Егор Толстой.
TК°Conf. Как мы делали ЖЖ. Егор Толстой.TК°Conf. Как мы делали ЖЖ. Егор Толстой.
TК°Conf. Как мы делали ЖЖ. Егор Толстой.TKConf
 
TК°Conf. Организация разработки Frontend. Виталий Слободин.
TК°Conf. Организация разработки Frontend. Виталий Слободин.TК°Conf. Организация разработки Frontend. Виталий Слободин.
TК°Conf. Организация разработки Frontend. Виталий Слободин.TKConf
 
TК°Conf. Stylelint — как и зачем линтить CSS. Андрей Ситник.
TК°Conf. Stylelint — как и зачем линтить CSS. Андрей Ситник.TК°Conf. Stylelint — как и зачем линтить CSS. Андрей Ситник.
TК°Conf. Stylelint — как и зачем линтить CSS. Андрей Ситник.TKConf
 
TК°Conf. Хайп против реальности: год жизни с изомофорным React-приложением. И...
TК°Conf. Хайп против реальности: год жизни с изомофорным React-приложением. И...TК°Conf. Хайп против реальности: год жизни с изомофорным React-приложением. И...
TК°Conf. Хайп против реальности: год жизни с изомофорным React-приложением. И...TKConf
 
TК°Conf. Как оформить права на программный продукт, чтобы его не угнали конку...
TК°Conf. Как оформить права на программный продукт, чтобы его не угнали конку...TК°Conf. Как оформить права на программный продукт, чтобы его не угнали конку...
TК°Conf. Как оформить права на программный продукт, чтобы его не угнали конку...TKConf
 
TК°Conf. Как проложить путь к успеху с помощью банковских карт. Александр Сычев.
TК°Conf. Как проложить путь к успеху с помощью банковских карт. Александр Сычев.TК°Conf. Как проложить путь к успеху с помощью банковских карт. Александр Сычев.
TК°Conf. Как проложить путь к успеху с помощью банковских карт. Александр Сычев.TKConf
 
TК°Conf. «Быстрокод» и что за это бывает. Артём Кулаков.
TК°Conf. «Быстрокод» и что за это бывает. Артём Кулаков.TК°Conf. «Быстрокод» и что за это бывает. Артём Кулаков.
TК°Conf. «Быстрокод» и что за это бывает. Артём Кулаков.TKConf
 
TК°Conf. Как отвечать за продакшн. Андрей Сумин.
TК°Conf. Как отвечать за продакшн. Андрей Сумин.TК°Conf. Как отвечать за продакшн. Андрей Сумин.
TК°Conf. Как отвечать за продакшн. Андрей Сумин.TKConf
 
TК°Conf. Микросервисы и Docker. Глеб Паньшин.
TК°Conf. Микросервисы и Docker. Глеб Паньшин.TК°Conf. Микросервисы и Docker. Глеб Паньшин.
TК°Conf. Микросервисы и Docker. Глеб Паньшин.TKConf
 
TК°Conf. 10 проблем автоматизации UI и их решение с помощью JDI. Роман Иовлев.
TК°Conf. 10 проблем автоматизации UI и их решение с помощью JDI. Роман Иовлев.TК°Conf. 10 проблем автоматизации UI и их решение с помощью JDI. Роман Иовлев.
TК°Conf. 10 проблем автоматизации UI и их решение с помощью JDI. Роман Иовлев.TKConf
 
TК°Conf. Обеспечение качества в продуктовых проектах. Наталья Руколь.
TК°Conf. Обеспечение качества в продуктовых проектах. Наталья Руколь.TК°Conf. Обеспечение качества в продуктовых проектах. Наталья Руколь.
TК°Conf. Обеспечение качества в продуктовых проектах. Наталья Руколь.TKConf
 
TК°Conf. Сетевые орг.структуры. Владимир Каленов.
TК°Conf. Сетевые орг.структуры. Владимир Каленов.TК°Conf. Сетевые орг.структуры. Владимир Каленов.
TК°Conf. Сетевые орг.структуры. Владимир Каленов.TKConf
 
TК°Conf. Красивый интерфейс — это лишь часть крутого UX. Никита Ефимов.
TК°Conf. Красивый интерфейс — это лишь часть крутого UX. Никита Ефимов.TК°Conf. Красивый интерфейс — это лишь часть крутого UX. Никита Ефимов.
TК°Conf. Красивый интерфейс — это лишь часть крутого UX. Никита Ефимов.TKConf
 
TК°Conf. Impact Mapping: планирование разработки продукта с учетом бизнес цел...
TК°Conf. Impact Mapping: планирование разработки продукта с учетом бизнес цел...TК°Conf. Impact Mapping: планирование разработки продукта с учетом бизнес цел...
TК°Conf. Impact Mapping: планирование разработки продукта с учетом бизнес цел...TKConf
 
Функциональное программирование в продуктовой разработке
Функциональное программирование в продуктовой разработкеФункциональное программирование в продуктовой разработке
Функциональное программирование в продуктовой разработкеTKConf
 
SQL vs NoSQL: 
проблема выбора
SQL vs NoSQL: 
проблема выбораSQL vs NoSQL: 
проблема выбора
SQL vs NoSQL: 
проблема выбораTKConf
 
Разработка через микросервисы
Разработка через микросервисыРазработка через микросервисы
Разработка через микросервисыTKConf
 
Архитектура растущего проекта, на примере ВКонтакте
Архитектура растущего проекта, на примере ВКонтактеАрхитектура растущего проекта, на примере ВКонтакте
Архитектура растущего проекта, на примере ВКонтактеTKConf
 
Проектирование архитектуры крупных веб-систем
Проектирование архитектуры крупных веб-системПроектирование архитектуры крупных веб-систем
Проектирование архитектуры крупных веб-системTKConf
 

More from TKConf (19)

TК°Conf. Как мы делали ЖЖ. Егор Толстой.
TК°Conf. Как мы делали ЖЖ. Егор Толстой.TК°Conf. Как мы делали ЖЖ. Егор Толстой.
TК°Conf. Как мы делали ЖЖ. Егор Толстой.
 
TК°Conf. Организация разработки Frontend. Виталий Слободин.
TК°Conf. Организация разработки Frontend. Виталий Слободин.TК°Conf. Организация разработки Frontend. Виталий Слободин.
TК°Conf. Организация разработки Frontend. Виталий Слободин.
 
TК°Conf. Stylelint — как и зачем линтить CSS. Андрей Ситник.
TК°Conf. Stylelint — как и зачем линтить CSS. Андрей Ситник.TК°Conf. Stylelint — как и зачем линтить CSS. Андрей Ситник.
TК°Conf. Stylelint — как и зачем линтить CSS. Андрей Ситник.
 
TК°Conf. Хайп против реальности: год жизни с изомофорным React-приложением. И...
TК°Conf. Хайп против реальности: год жизни с изомофорным React-приложением. И...TК°Conf. Хайп против реальности: год жизни с изомофорным React-приложением. И...
TК°Conf. Хайп против реальности: год жизни с изомофорным React-приложением. И...
 
TК°Conf. Как оформить права на программный продукт, чтобы его не угнали конку...
TК°Conf. Как оформить права на программный продукт, чтобы его не угнали конку...TК°Conf. Как оформить права на программный продукт, чтобы его не угнали конку...
TК°Conf. Как оформить права на программный продукт, чтобы его не угнали конку...
 
TК°Conf. Как проложить путь к успеху с помощью банковских карт. Александр Сычев.
TК°Conf. Как проложить путь к успеху с помощью банковских карт. Александр Сычев.TК°Conf. Как проложить путь к успеху с помощью банковских карт. Александр Сычев.
TК°Conf. Как проложить путь к успеху с помощью банковских карт. Александр Сычев.
 
TК°Conf. «Быстрокод» и что за это бывает. Артём Кулаков.
TК°Conf. «Быстрокод» и что за это бывает. Артём Кулаков.TК°Conf. «Быстрокод» и что за это бывает. Артём Кулаков.
TК°Conf. «Быстрокод» и что за это бывает. Артём Кулаков.
 
TК°Conf. Как отвечать за продакшн. Андрей Сумин.
TК°Conf. Как отвечать за продакшн. Андрей Сумин.TК°Conf. Как отвечать за продакшн. Андрей Сумин.
TК°Conf. Как отвечать за продакшн. Андрей Сумин.
 
TК°Conf. Микросервисы и Docker. Глеб Паньшин.
TК°Conf. Микросервисы и Docker. Глеб Паньшин.TК°Conf. Микросервисы и Docker. Глеб Паньшин.
TК°Conf. Микросервисы и Docker. Глеб Паньшин.
 
TК°Conf. 10 проблем автоматизации UI и их решение с помощью JDI. Роман Иовлев.
TК°Conf. 10 проблем автоматизации UI и их решение с помощью JDI. Роман Иовлев.TК°Conf. 10 проблем автоматизации UI и их решение с помощью JDI. Роман Иовлев.
TК°Conf. 10 проблем автоматизации UI и их решение с помощью JDI. Роман Иовлев.
 
TК°Conf. Обеспечение качества в продуктовых проектах. Наталья Руколь.
TК°Conf. Обеспечение качества в продуктовых проектах. Наталья Руколь.TК°Conf. Обеспечение качества в продуктовых проектах. Наталья Руколь.
TК°Conf. Обеспечение качества в продуктовых проектах. Наталья Руколь.
 
TК°Conf. Сетевые орг.структуры. Владимир Каленов.
TК°Conf. Сетевые орг.структуры. Владимир Каленов.TК°Conf. Сетевые орг.структуры. Владимир Каленов.
TК°Conf. Сетевые орг.структуры. Владимир Каленов.
 
TК°Conf. Красивый интерфейс — это лишь часть крутого UX. Никита Ефимов.
TК°Conf. Красивый интерфейс — это лишь часть крутого UX. Никита Ефимов.TК°Conf. Красивый интерфейс — это лишь часть крутого UX. Никита Ефимов.
TК°Conf. Красивый интерфейс — это лишь часть крутого UX. Никита Ефимов.
 
TК°Conf. Impact Mapping: планирование разработки продукта с учетом бизнес цел...
TК°Conf. Impact Mapping: планирование разработки продукта с учетом бизнес цел...TК°Conf. Impact Mapping: планирование разработки продукта с учетом бизнес цел...
TК°Conf. Impact Mapping: планирование разработки продукта с учетом бизнес цел...
 
Функциональное программирование в продуктовой разработке
Функциональное программирование в продуктовой разработкеФункциональное программирование в продуктовой разработке
Функциональное программирование в продуктовой разработке
 
SQL vs NoSQL: 
проблема выбора
SQL vs NoSQL: 
проблема выбораSQL vs NoSQL: 
проблема выбора
SQL vs NoSQL: 
проблема выбора
 
Разработка через микросервисы
Разработка через микросервисыРазработка через микросервисы
Разработка через микросервисы
 
Архитектура растущего проекта, на примере ВКонтакте
Архитектура растущего проекта, на примере ВКонтактеАрхитектура растущего проекта, на примере ВКонтакте
Архитектура растущего проекта, на примере ВКонтакте
 
Проектирование архитектуры крупных веб-систем
Проектирование архитектуры крупных веб-системПроектирование архитектуры крупных веб-систем
Проектирование архитектуры крупных веб-систем
 

TК°Conf. Ещё не поздно учить WebGL. Антон Корзунов.