SlideShare ist ein Scribd-Unternehmen logo
1 von 76
Downloaden Sie, um offline zu lesen
Облачная платформа
Cocaine - облако
своими рукаим
Антон Тюрин
разработчик облачной платформы
четверг, 13 июня 13 г.
Кокаин — это облачная платформа
четверг, 13 июня 13 г.
bit.ly/YaSubb-011212
Про Cocaine на Я.Субботнике
в Санкт-Петербурге в декабре 2012
Осторожно! С тех пор стало ещё лучше!
четверг, 13 июня 13 г.
Неуправляемые платформы
четверг, 13 июня 13 г.
+ Написать нужно только основную
логику.
Неуправляемые платформы
четверг, 13 июня 13 г.
+ Написать нужно только основную
логику.
+ Быстрая и дешёвая разработка.
Неуправляемые платформы
четверг, 13 июня 13 г.
+ Написать нужно только основную
логику.
+ Быстрая и дешёвая разработка.
– Ограничения в выборе инструментов.
Неуправляемые платформы
четверг, 13 июня 13 г.
+ Написать нужно только основную
логику.
+ Быстрая и дешёвая разработка.
– Ограничения в выборе инструментов.
– Нет контроля за окружением.
Неуправляемые платформы
четверг, 13 июня 13 г.
Управляемые платформы
четверг, 13 июня 13 г.
Управляемые платформы
+ Можно запустить почти всё что угодно.
четверг, 13 июня 13 г.
Управляемые платформы
+ Можно запустить почти всё что угодно.
+ Полный контроль над окружением.
четверг, 13 июня 13 г.
Управляемые платформы
+ Можно запустить почти всё что угодно.
+ Полный контроль над окружением.
– Нужно всё написать самому.
четверг, 13 июня 13 г.
Управляемые платформы
+ Можно запустить почти всё что угодно.
+ Полный контроль над окружением.
– Нужно всё написать самому.
– Полный цикл разработки.
четверг, 13 июня 13 г.
Cocaine Frameworks
четверг, 13 июня 13 г.
+ Асинхронный код.
Cocaine Frameworks
четверг, 13 июня 13 г.
+ Асинхронный код.
+ Грязная работа уже сделана.
Cocaine Frameworks
четверг, 13 июня 13 г.
+ Асинхронный код.
+ Грязная работа уже сделана.
+ Поддерживается Python, Node.js, C++.
Cocaine Frameworks
четверг, 13 июня 13 г.
+ Асинхронный код.
+ Грязная работа уже сделана.
+ Поддерживается Python, Node.js, C++.
– Нужно адаптировать существующий код.
Cocaine Frameworks
четверг, 13 июня 13 г.
Python
#!/usr/bin/env python
from cocaine.worker import Worker
W = Worker() # Dispatcher object
def event_handler(request, response):
req = yield request.read() # Read incoming data
if "Hello!" in req:
response.write("Hello, world!") # Send data chunk
else:
response.write("Please, say 'Hello' to me!")
response.close()
W.run({"hello" : event_handler}) # Run event loop.
bit.ly/YaSubb-dummy
четверг, 13 июня 13 г.
Node.js
#!/usr/bin/env node
var Q = require("q")
var co = require("..")
var argv = require("optimist").argv
var mp = require("msgpack")
var __assert = require("assert")
var crypto = require("crypto")
var W
co.getServices([],function(){
  
  var W = new co.Worker(argv)
  W.on("hash",function(stream){
    var sha512 = crypto.createHash("sha512")
    var request
    stream.on("data",function(data){ request = data
      sha512.update(data) })
    
    stream.on("end",function(){
      var d = sha512.digest("hex")
      stream.write(
        mp.pack({code:200,
                 headers:[ ["content-type","text/plain"], ["content-length",""+(d.length+1)],
                   ["x-by","worker"+argv.uuid]]}))
      stream.write(d+"n")
      stream.end()
    })
  })
  W.on("_terminate",function(){
    console.log("worker terminating")
    process.exit(0)
  })
})
четверг, 13 июня 13 г.
#include <fstream>
#include <functional>
#include <cocaine/framework/worker.hpp>
#include <cocaine/framework/application.hpp>
using namespace cocaine::framework;
class AppProxy : public application<AppProxy>
{
struct event_handler :
public handler<AppProxy>,
public std::enable_shared_from_this<event_handler>
{
event_handler(std::shared_ptr<AppProxy> a) : handler<AppProxy>(a) {
}
void
on_chunk(const char *chunk, size_t size) {
response()->write(chunk);
response()->close();
}
};
public:
AppProxy(std::shared_ptr<service_manager_t> service_manager) :
application<AppProxy>(service_manager) { }
void initialize() {
on<event_handler>("get");
}
};
int main(int argc, char *argv[])
{
cocaine::framework::worker_t::run<AppProxy>(argc, argv);
}
С++
четверг, 13 июня 13 г.
Драйверы
четверг, 13 июня 13 г.
Драйверы
четверг, 13 июня 13 г.
• Обычно, приложения — event driven.
Драйверы
четверг, 13 июня 13 г.
• Обычно, приложения — event driven.
• И единственное событие — HTTP-
запрос.
Драйверы
четверг, 13 июня 13 г.
You app
Драйверы
timeout
Timer
Driver
http-request
HTTP
Driver
file-changed
Filesystem
Driver
Cocaine
четверг, 13 июня 13 г.
You app
Драйверы
timeout
Timer
Driver
http-request
HTTP
Driver
Arduino
Driver?
file-changed
Filesystem
Driver
Cocaine
четверг, 13 июня 13 г.
You app
Драйверы
timeout
Timer
Driver
http-request
HTTP
Driver
wind-speed
Arduino
Driver?
file-changed
Filesystem
Driver
Cocaine
четверг, 13 июня 13 г.
{
"slave" : "dummy_with_drivers.py",
"drivers" : {
"A": {
"type": "filesystem-monitor",
"args": {
"emit": "file_changed",
"path": "/tmp/dummy-file"
}
},
"B": {
"type": "time",
"args": {
"emit": "wakeup",
"interval": 1000
}
}
}
}
Configure drivers
четверг, 13 июня 13 г.
Сервисы
четверг, 13 июня 13 г.
Сервисы
четверг, 13 июня 13 г.
• К общим компонентам — общий доступ.
Сервисы
четверг, 13 июня 13 г.
• К общим компонентам — общий доступ.
• Геолокация, логирование, определение
модели телефона, хранение данных, ...
Сервисы
четверг, 13 июня 13 г.
• К общим компонентам — общий доступ.
• Геолокация, логирование, определение
модели телефона, хранение данных, ...
• Для всех и без лишних задержек.
Сервисы
четверг, 13 июня 13 г.
• К общим компонентам — общий доступ.
• Геолокация, логирование, определение
модели телефона, хранение данных, ...
• Для всех и без лишних задержек.
• Не надо писать биндинг в каждый язык
Сервисы
четверг, 13 июня 13 г.
Сервисы
Geolocation
Logging
URL Fetching
MapReduce
RPC
App #1 Worker
App #1 Worker
App #2 Worker
App #2 Worker
Cocaine
четверг, 13 июня 13 г.
#!/usr/bin/env python
from cocaine.worker import Worker
from cocaine.services import Service
storage = Service("storage")
def write_dummy(request, response):
req = yield request.read()
yield storage.write("dummy-namespace", "dummy-key",
req , ["dummy-tag"])
dummy = yield storage.read("dummy-namespace", "dummy-key")
response.write(dummy)
response.close()
W = Worker()
W.run({"write_dummy" : write_dummy})
Python bit.ly/YaSubb-cocaine-service
четверг, 13 июня 13 г.
Протокол
четверг, 13 июня 13 г.
Взаимодействие
четверг, 13 июня 13 г.
• Сервисы, приложения, ядро - общаются
по одному протоколу.
Взаимодействие
четверг, 13 июня 13 г.
• Сервисы, приложения, ядро - общаются
по одному протоколу.
• Простой - состоит из 7 команд.
Взаимодействие
четверг, 13 июня 13 г.
• Сервисы, приложения, ядро - общаются
по одному протоколу.
• Простой - состоит из 7 команд.
• Поддерживает стриминг.
Взаимодействие
четверг, 13 июня 13 г.
[1, 0, [ arg1, arg2 ]]
номер канала
код команды
специфичные для команды
данные
четверг, 13 июня 13 г.
Команды
• heartbeat
• handshake
• terminate
• error
• invoke
• chunk
• choke
четверг, 13 июня 13 г.
Cocaine-Runtime
четверг, 13 июня 13 г.
Cocaine-Runtime
четверг, 13 июня 13 г.
Cocaine-Runtime
• Управляет количеством воркеров
четверг, 13 июня 13 г.
Cocaine-Runtime
• Управляет количеством воркеров
• Запускает сервисы
четверг, 13 июня 13 г.
Cocaine-Runtime
• Управляет количеством воркеров
• Запускает сервисы
• Собирает статистику о других runtime
четверг, 13 июня 13 г.
Cocaine-Runtime
• Управляет количеством воркеров
• Запускает сервисы
• Собирает статистику о других runtime
• Предоставляет локатор сервисов
четверг, 13 июня 13 г.
Cocaine-Runtime
• Управляет количеством воркеров
• Запускает сервисы
• Собирает статистику о других runtime
• Предоставляет локатор сервисов
• Загружает драйверы
четверг, 13 июня 13 г.
Cocaine-tool
четверг, 13 июня 13 г.
Cocaine-tool
• Управление приложениями в облаке
• Информация о состоянии облака
• Для тех, кто не боится командной
строки
четверг, 13 июня 13 г.
service cocaine-runtime start
• Стартуют сервисы
• Создаются сокеты для воркеров
• Инициализируются данные для приложений
четверг, 13 июня 13 г.
service cocaine-runtime start
Cocaine
Runtime
• Стартуют сервисы
• Создаются сокеты для воркеров
• Инициализируются данные для приложений
четверг, 13 июня 13 г.
service cocaine-runtime start
Cocaine
Runtime
Service Node
Service Locator
Other services
• Стартуют сервисы
• Создаются сокеты для воркеров
• Инициализируются данные для приложений
четверг, 13 июня 13 г.
service cocaine-runtime start
Cocaine
Runtime
UDS for appB
Service Node
Service Locator
Other services
• Стартуют сервисы
• Создаются сокеты для воркеров
• Инициализируются данные для приложений
четверг, 13 июня 13 г.
service cocaine-runtime start
Cocaine
Runtime
UDS for appBUDS for appA
Service Node
Service Locator
Other services
• Стартуют сервисы
• Создаются сокеты для воркеров
• Инициализируются данные для приложений
четверг, 13 июня 13 г.
Рождение
Cocaine
RuntimeUDS for appA UDS for appB
Service Node
Service Locator
Other services
• Запускает worker
• Ждет handshake от worker’а
• Worker стартует и шлет handshake
четверг, 13 июня 13 г.
Рождение
Cocaine
RuntimeUDS for appA UDS for appB
Service Node
Service Locator
Other services
first event for appA
• Запускает worker
• Ждет handshake от worker’а
• Worker стартует и шлет handshake
четверг, 13 июня 13 г.
Рождение
Cocaine
RuntimeUDS for appA UDS for appB
Service Node
Service Locator
Other services
first event for appA
worker
for A
fork & exec slave --uuid <uuid> --endpoint <UDS>
runtime ждет handshake
• Запускает worker
• Ждет handshake от worker’а
• Worker стартует и шлет handshake
четверг, 13 июня 13 г.
Рождение
Cocaine
RuntimeUDS for appA UDS for appB
Service Node
Service Locator
Other services
first event for appA
handshake
with uuid
worker
for A
fork & exec slave --uuid <uuid> --endpoint <UDS>
runtime ждет handshake
• Запускает worker
• Ждет handshake от worker’а
• Worker стартует и шлет handshake
четверг, 13 июня 13 г.
Сессия
Cocaine
RuntimeUDS for appA UDS for appB
Service Node
Service Locator
Other services
worker
for A
четверг, 13 июня 13 г.
Сессия
Cocaine
RuntimeUDS for appA UDS for appB
Service Node
Service Locator
Other services
worker
for A
четверг, 13 июня 13 г.
Сессия
Cocaine
RuntimeUDS for appA UDS for appB
Service Node
Service Locator
Other services
worker
for A
четверг, 13 июня 13 г.
Сессия
Cocaine
RuntimeUDS for appA UDS for appB
Service Node
Service Locator
Other services
worker
for A
service endpoint
четверг, 13 июня 13 г.
Сессия
Cocaine
RuntimeUDS for appA UDS for appB
Service Node
Service Locator
Other services
worker
for A
service endpoint
Service storage
another CR node
четверг, 13 июня 13 г.
Сессия
Cocaine
RuntimeUDS for appA UDS for appB
Service Node
Service Locator
Other services
worker
for A
service endpoint
Service storage
another CR node
четверг, 13 июня 13 г.
- Да, наверняка ничего не
работает!
- Сейчас покажу!
bitly.com/iwantcoke
четверг, 13 июня 13 г.
Модули
четверг, 13 июня 13 г.
Модули
четверг, 13 июня 13 г.
• Всё, кроме ядра системы —
подключаемые модули.
Модули
четверг, 13 июня 13 г.
• Всё, кроме ядра системы —
подключаемые модули.
• Драйверы, изоляторы, сервисы,
стораджи, системы логирования.
Модули
четверг, 13 июня 13 г.
• Всё, кроме ядра системы —
подключаемые модули.
• Драйверы, изоляторы, сервисы,
стораджи, системы логирования.
• И их можно менять в рантайме.
Модули
четверг, 13 июня 13 г.
• Essentials
• Blastbeat Driver
• CGroups Isolation
• MongoDB Storage
• Elliptics Storage
• URLFetch Service
Open Source
четверг, 13 июня 13 г.
noxiouz@yandex.ru
@Noxi0uz
Спасибо
Разработчик облачной
платформы
Антон Тюрин
четверг, 13 июня 13 г.

Weitere ähnliche Inhalte

Was ist angesagt?

Как собирать gps треки раз в секунду, экономя траффик
Как собирать gps треки раз в секунду, экономя траффикКак собирать gps треки раз в секунду, экономя траффик
Как собирать gps треки раз в секунду, экономя траффикAndrew Minkin
 
Семь тысяч Rps, один go
Семь тысяч Rps, один goСемь тысяч Rps, один go
Семь тысяч Rps, один goBadoo Development
 
PostgreSQL: практические примеры оптимизации SQL-запросов / Иван Фролков (Po...
PostgreSQL: практические примеры оптимизации SQL-запросов /  Иван Фролков (Po...PostgreSQL: практические примеры оптимизации SQL-запросов /  Иван Фролков (Po...
PostgreSQL: практические примеры оптимизации SQL-запросов / Иван Фролков (Po...Ontico
 
Reinventing the wheel - why do it and how to feel good about it - Julik Tarkh...
Reinventing the wheel - why do it and how to feel good about it - Julik Tarkh...Reinventing the wheel - why do it and how to feel good about it - Julik Tarkh...
Reinventing the wheel - why do it and how to feel good about it - Julik Tarkh...Ruby Meditation
 
The Great Migration by Baruch Sadogursky
The Great Migration by Baruch SadogurskyThe Great Migration by Baruch Sadogursky
The Great Migration by Baruch SadogurskyJavaDayUA
 
Илья Евлампиев - Нагрузочное тестирование веб-приложений с помощью The Grinder
Илья Евлампиев - Нагрузочное тестирование веб-приложений с помощью The GrinderИлья Евлампиев - Нагрузочное тестирование веб-приложений с помощью The Grinder
Илья Евлампиев - Нагрузочное тестирование веб-приложений с помощью The GrinderSQALab
 
Отладка производительности приложения на Erlang / Максим Лапшин (Erlyvideo)
 Отладка производительности приложения на Erlang / Максим Лапшин (Erlyvideo) Отладка производительности приложения на Erlang / Максим Лапшин (Erlyvideo)
Отладка производительности приложения на Erlang / Максим Лапшин (Erlyvideo)Ontico
 
PHP libevent Daemons. A high performance and reliable solution. Practical exp...
PHP libevent Daemons. A high performance and reliable solution. Practical exp...PHP libevent Daemons. A high performance and reliable solution. Practical exp...
PHP libevent Daemons. A high performance and reliable solution. Practical exp...Arvids Godjuks
 
Внутреннее устройство PostgreSQL: временные таблицы и фрагментация памяти / Г...
Внутреннее устройство PostgreSQL: временные таблицы и фрагментация памяти / Г...Внутреннее устройство PostgreSQL: временные таблицы и фрагментация памяти / Г...
Внутреннее устройство PostgreSQL: временные таблицы и фрагментация памяти / Г...Ontico
 
"Fault tolerant workflow orchestration on PHP", Anton Tsitou
"Fault tolerant workflow orchestration on PHP", Anton Tsitou"Fault tolerant workflow orchestration on PHP", Anton Tsitou
"Fault tolerant workflow orchestration on PHP", Anton TsitouFwdays
 
Андрей Дроздов "Создание высокопроизводительных rest api на tarantool"
Андрей Дроздов "Создание высокопроизводительных rest api на tarantool"Андрей Дроздов "Создание высокопроизводительных rest api на tarantool"
Андрей Дроздов "Создание высокопроизводительных rest api на tarantool"Tanya Denisyuk
 
Оптимизация работы с данными в мобильных приложениях / Святослав Иванов, Артё...
Оптимизация работы с данными в мобильных приложениях / Святослав Иванов, Артё...Оптимизация работы с данными в мобильных приложениях / Святослав Иванов, Артё...
Оптимизация работы с данными в мобильных приложениях / Святослав Иванов, Артё...Ontico
 
Проникновение в Docker с примерами
Проникновение в Docker с примерамиПроникновение в Docker с примерами
Проникновение в Docker с примерамиДмитрий Столяров
 
Reform: путь к лучшему ORM
Reform: путь к лучшему ORMReform: путь к лучшему ORM
Reform: путь к лучшему ORMBadoo Development
 
MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)
MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)
MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)Ontico
 
Реактивный раздатчик ok.ru/music
Реактивный раздатчик ok.ru/musicРеактивный раздатчик ok.ru/music
Реактивный раздатчик ok.ru/musicVadim Tsesko
 
Архитектура растущего проекта на примере ВКонтакте / Алексей Акулович (ВКонт...
 Архитектура растущего проекта на примере ВКонтакте / Алексей Акулович (ВКонт... Архитектура растущего проекта на примере ВКонтакте / Алексей Акулович (ВКонт...
Архитектура растущего проекта на примере ВКонтакте / Алексей Акулович (ВКонт...Ontico
 
Современная операционная система: что надо знать разработчику / Александр Кри...
Современная операционная система: что надо знать разработчику / Александр Кри...Современная операционная система: что надо знать разработчику / Александр Кри...
Современная операционная система: что надо знать разработчику / Александр Кри...Ontico
 

Was ist angesagt? (20)

Как собирать gps треки раз в секунду, экономя траффик
Как собирать gps треки раз в секунду, экономя траффикКак собирать gps треки раз в секунду, экономя траффик
Как собирать gps треки раз в секунду, экономя траффик
 
Семь тысяч Rps, один go
Семь тысяч Rps, один goСемь тысяч Rps, один go
Семь тысяч Rps, один go
 
PostgreSQL: практические примеры оптимизации SQL-запросов / Иван Фролков (Po...
PostgreSQL: практические примеры оптимизации SQL-запросов /  Иван Фролков (Po...PostgreSQL: практические примеры оптимизации SQL-запросов /  Иван Фролков (Po...
PostgreSQL: практические примеры оптимизации SQL-запросов / Иван Фролков (Po...
 
Reinventing the wheel - why do it and how to feel good about it - Julik Tarkh...
Reinventing the wheel - why do it and how to feel good about it - Julik Tarkh...Reinventing the wheel - why do it and how to feel good about it - Julik Tarkh...
Reinventing the wheel - why do it and how to feel good about it - Julik Tarkh...
 
The Great Migration by Baruch Sadogursky
The Great Migration by Baruch SadogurskyThe Great Migration by Baruch Sadogursky
The Great Migration by Baruch Sadogursky
 
Илья Евлампиев - Нагрузочное тестирование веб-приложений с помощью The Grinder
Илья Евлампиев - Нагрузочное тестирование веб-приложений с помощью The GrinderИлья Евлампиев - Нагрузочное тестирование веб-приложений с помощью The Grinder
Илья Евлампиев - Нагрузочное тестирование веб-приложений с помощью The Grinder
 
Отладка производительности приложения на Erlang / Максим Лапшин (Erlyvideo)
 Отладка производительности приложения на Erlang / Максим Лапшин (Erlyvideo) Отладка производительности приложения на Erlang / Максим Лапшин (Erlyvideo)
Отладка производительности приложения на Erlang / Максим Лапшин (Erlyvideo)
 
PHP libevent Daemons. A high performance and reliable solution. Practical exp...
PHP libevent Daemons. A high performance and reliable solution. Practical exp...PHP libevent Daemons. A high performance and reliable solution. Practical exp...
PHP libevent Daemons. A high performance and reliable solution. Practical exp...
 
Внутреннее устройство PostgreSQL: временные таблицы и фрагментация памяти / Г...
Внутреннее устройство PostgreSQL: временные таблицы и фрагментация памяти / Г...Внутреннее устройство PostgreSQL: временные таблицы и фрагментация памяти / Г...
Внутреннее устройство PostgreSQL: временные таблицы и фрагментация памяти / Г...
 
"Fault tolerant workflow orchestration on PHP", Anton Tsitou
"Fault tolerant workflow orchestration on PHP", Anton Tsitou"Fault tolerant workflow orchestration on PHP", Anton Tsitou
"Fault tolerant workflow orchestration on PHP", Anton Tsitou
 
Андрей Дроздов "Создание высокопроизводительных rest api на tarantool"
Андрей Дроздов "Создание высокопроизводительных rest api на tarantool"Андрей Дроздов "Создание высокопроизводительных rest api на tarantool"
Андрей Дроздов "Создание высокопроизводительных rest api на tarantool"
 
Оптимизация работы с данными в мобильных приложениях / Святослав Иванов, Артё...
Оптимизация работы с данными в мобильных приложениях / Святослав Иванов, Артё...Оптимизация работы с данными в мобильных приложениях / Святослав Иванов, Артё...
Оптимизация работы с данными в мобильных приложениях / Святослав Иванов, Артё...
 
Парсер: что? зачем? как?
Парсер: что? зачем? как?Парсер: что? зачем? как?
Парсер: что? зачем? как?
 
Проникновение в Docker с примерами
Проникновение в Docker с примерамиПроникновение в Docker с примерами
Проникновение в Docker с примерами
 
Reform: путь к лучшему ORM
Reform: путь к лучшему ORMReform: путь к лучшему ORM
Reform: путь к лучшему ORM
 
MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)
MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)
MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)
 
Реактивный раздатчик ok.ru/music
Реактивный раздатчик ok.ru/musicРеактивный раздатчик ok.ru/music
Реактивный раздатчик ok.ru/music
 
Архитектура растущего проекта на примере ВКонтакте / Алексей Акулович (ВКонт...
 Архитектура растущего проекта на примере ВКонтакте / Алексей Акулович (ВКонт... Архитектура растущего проекта на примере ВКонтакте / Алексей Акулович (ВКонт...
Архитектура растущего проекта на примере ВКонтакте / Алексей Акулович (ВКонт...
 
Современная операционная система: что надо знать разработчику / Александр Кри...
Современная операционная система: что надо знать разработчику / Александр Кри...Современная операционная система: что надо знать разработчику / Александр Кри...
Современная операционная система: что надо знать разработчику / Александр Кри...
 
pgconf.ru 2015 avito postgresql
pgconf.ru 2015 avito postgresqlpgconf.ru 2015 avito postgresql
pgconf.ru 2015 avito postgresql
 

Andere mochten auch

Платформа "1С:Предприятие 8.3" — основа современной ИТ-архитектуры для корпор...
Платформа "1С:Предприятие 8.3" — основа современной ИТ-архитектуры для корпор...Платформа "1С:Предприятие 8.3" — основа современной ИТ-архитектуры для корпор...
Платформа "1С:Предприятие 8.3" — основа современной ИТ-архитектуры для корпор...Investec
 
презентация 1с платформа 8.3.6 кл
презентация 1с платформа 8.3.6 клпрезентация 1с платформа 8.3.6 кл
презентация 1с платформа 8.3.6 клHelen Kopteva
 
Groozgo презентация
Groozgo презентацияGroozgo презентация
Groozgo презентацияAnna Kachurets
 
«1С-Битрикс: Управление сайтом 16.0»
«1С-Битрикс: Управление сайтом 16.0»«1С-Битрикс: Управление сайтом 16.0»
«1С-Битрикс: Управление сайтом 16.0»Наталья Сергеева
 
Платформа лояльности и CRM mReward / mLoyalty
Платформа лояльности и CRM mReward / mLoyaltyПлатформа лояльности и CRM mReward / mLoyalty
Платформа лояльности и CRM mReward / mLoyaltyRuslan Dymchuk
 
Actualog - облачная платформа для управления информацией о продукции. Social ...
Actualog - облачная платформа для управления информацией о продукции. Social ...Actualog - облачная платформа для управления информацией о продукции. Social ...
Actualog - облачная платформа для управления информацией о продукции. Social ...Kate Koltunova
 

Andere mochten auch (7)

1
11
1
 
Платформа "1С:Предприятие 8.3" — основа современной ИТ-архитектуры для корпор...
Платформа "1С:Предприятие 8.3" — основа современной ИТ-архитектуры для корпор...Платформа "1С:Предприятие 8.3" — основа современной ИТ-архитектуры для корпор...
Платформа "1С:Предприятие 8.3" — основа современной ИТ-архитектуры для корпор...
 
презентация 1с платформа 8.3.6 кл
презентация 1с платформа 8.3.6 клпрезентация 1с платформа 8.3.6 кл
презентация 1с платформа 8.3.6 кл
 
Groozgo презентация
Groozgo презентацияGroozgo презентация
Groozgo презентация
 
«1С-Битрикс: Управление сайтом 16.0»
«1С-Битрикс: Управление сайтом 16.0»«1С-Битрикс: Управление сайтом 16.0»
«1С-Битрикс: Управление сайтом 16.0»
 
Платформа лояльности и CRM mReward / mLoyalty
Платформа лояльности и CRM mReward / mLoyaltyПлатформа лояльности и CRM mReward / mLoyalty
Платформа лояльности и CRM mReward / mLoyalty
 
Actualog - облачная платформа для управления информацией о продукции. Social ...
Actualog - облачная платформа для управления информацией о продукции. Social ...Actualog - облачная платформа для управления информацией о продукции. Social ...
Actualog - облачная платформа для управления информацией о продукции. Social ...
 

Ähnlich wie Антон Тюрин — Облачная платформа Cocaine — облако своими руками

Docker в Badoo: ПМЖ или временная регистрация
Docker в Badoo: ПМЖ или временная регистрацияDocker в Badoo: ПМЖ или временная регистрация
Docker в Badoo: ПМЖ или временная регистрацияBadoo Development
 
Java осень 2013 лекция 5-1
Java осень 2013 лекция 5-1Java осень 2013 лекция 5-1
Java осень 2013 лекция 5-1Technopark
 
FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»
FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»
FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»Yandex
 
Node.js введение в технологию, КПИ #ITmeetingKPI
Node.js введение в технологию, КПИ  #ITmeetingKPINode.js введение в технологию, КПИ  #ITmeetingKPI
Node.js введение в технологию, КПИ #ITmeetingKPITimur Shemsedinov
 
CodeFest 2010. Столяров С. — Серверный JavaScript: NodeJS и CouchDB
CodeFest 2010. Столяров С. — Серверный JavaScript: NodeJS и CouchDBCodeFest 2010. Столяров С. — Серверный JavaScript: NodeJS и CouchDB
CodeFest 2010. Столяров С. — Серверный JavaScript: NodeJS и CouchDBCodeFest
 
Серверный JavaScript: NodeJS и CouchDB
Серверный JavaScript: NodeJS и CouchDBСерверный JavaScript: NodeJS и CouchDB
Серверный JavaScript: NodeJS и CouchDBStepan Stolyarov
 
Инфраструктура распределенных приложений на Node.js
Инфраструктура распределенных приложений на Node.jsИнфраструктура распределенных приложений на Node.js
Инфраструктура распределенных приложений на Node.jsStanislav Gumeniuk
 
Механизмы C-extensions в Erlang
Механизмы C-extensions в ErlangМеханизмы C-extensions в Erlang
Механизмы C-extensions в ErlangDevDay
 
#7 "Многообещающий JavaScript – Promises" Денис Речкунов
#7 "Многообещающий JavaScript – Promises" Денис Речкунов#7 "Многообещающий JavaScript – Promises" Денис Речкунов
#7 "Многообещающий JavaScript – Promises" Денис РечкуновJSib
 
CodeFest 2012. Корсаков С. — Cucumber. Некоторые советы по приготовлению
CodeFest 2012. Корсаков С. — Cucumber. Некоторые советы по приготовлениюCodeFest 2012. Корсаков С. — Cucumber. Некоторые советы по приготовлению
CodeFest 2012. Корсаков С. — Cucumber. Некоторые советы по приготовлениюCodeFest
 
CodeFest 2014. Круглов И. — События на каждом углу. Путешествие в мир системн...
CodeFest 2014. Круглов И. — События на каждом углу. Путешествие в мир системн...CodeFest 2014. Круглов И. — События на каждом углу. Путешествие в мир системн...
CodeFest 2014. Круглов И. — События на каждом углу. Путешествие в мир системн...CodeFest
 
CI/CD-приложений на Tarantool: от пустого репозитория — до продакшна
CI/CD-приложений на Tarantool: от пустого репозитория — до продакшнаCI/CD-приложений на Tarantool: от пустого репозитория — до продакшна
CI/CD-приложений на Tarantool: от пустого репозитория — до продакшнаMail.ru Group
 
Mobile Monday Kiev#1 - How to save time in Mobile Apps Development
Mobile Monday Kiev#1 - How to save time in Mobile Apps DevelopmentMobile Monday Kiev#1 - How to save time in Mobile Apps Development
Mobile Monday Kiev#1 - How to save time in Mobile Apps DevelopmentIntersog
 
Building the Enterprise infrastructure with PostgreSQL as the basis for stori...
Building the Enterprise infrastructure with PostgreSQL as the basis for stori...Building the Enterprise infrastructure with PostgreSQL as the basis for stori...
Building the Enterprise infrastructure with PostgreSQL as the basis for stori...PavelKonotopov
 
мониторинг производительности Web приложений на python
мониторинг производительности Web приложений на pythonмониторинг производительности Web приложений на python
мониторинг производительности Web приложений на pythonSlach
 
Ловля сетями. Инструменты отладки сетевых запросов приложений / Дмитрий Рыбак...
Ловля сетями. Инструменты отладки сетевых запросов приложений / Дмитрий Рыбак...Ловля сетями. Инструменты отладки сетевых запросов приложений / Дмитрий Рыбак...
Ловля сетями. Инструменты отладки сетевых запросов приложений / Дмитрий Рыбак...Ontico
 
The art of Node.js or how to do something cool using public data by Ilya Zapr...
The art of Node.js or how to do something cool using public data by Ilya Zapr...The art of Node.js or how to do something cool using public data by Ilya Zapr...
The art of Node.js or how to do something cool using public data by Ilya Zapr...OdessaJS Conf
 

Ähnlich wie Антон Тюрин — Облачная платформа Cocaine — облако своими руками (20)

Docker в Badoo: ПМЖ или временная регистрация
Docker в Badoo: ПМЖ или временная регистрацияDocker в Badoo: ПМЖ или временная регистрация
Docker в Badoo: ПМЖ или временная регистрация
 
Java осень 2013 лекция 5-1
Java осень 2013 лекция 5-1Java осень 2013 лекция 5-1
Java осень 2013 лекция 5-1
 
FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»
FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»
FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»
 
Node.js введение в технологию, КПИ #ITmeetingKPI
Node.js введение в технологию, КПИ  #ITmeetingKPINode.js введение в технологию, КПИ  #ITmeetingKPI
Node.js введение в технологию, КПИ #ITmeetingKPI
 
CodeFest 2010. Столяров С. — Серверный JavaScript: NodeJS и CouchDB
CodeFest 2010. Столяров С. — Серверный JavaScript: NodeJS и CouchDBCodeFest 2010. Столяров С. — Серверный JavaScript: NodeJS и CouchDB
CodeFest 2010. Столяров С. — Серверный JavaScript: NodeJS и CouchDB
 
Серверный JavaScript: NodeJS и CouchDB
Серверный JavaScript: NodeJS и CouchDBСерверный JavaScript: NodeJS и CouchDB
Серверный JavaScript: NodeJS и CouchDB
 
Инфраструктура распределенных приложений на Node.js
Инфраструктура распределенных приложений на Node.jsИнфраструктура распределенных приложений на Node.js
Инфраструктура распределенных приложений на Node.js
 
Api devconf 2013
Api devconf 2013Api devconf 2013
Api devconf 2013
 
Механизмы C-extensions в Erlang
Механизмы C-extensions в ErlangМеханизмы C-extensions в Erlang
Механизмы C-extensions в Erlang
 
#7 "Многообещающий JavaScript – Promises" Денис Речкунов
#7 "Многообещающий JavaScript – Promises" Денис Речкунов#7 "Многообещающий JavaScript – Promises" Денис Речкунов
#7 "Многообещающий JavaScript – Promises" Денис Речкунов
 
CodeFest 2012. Корсаков С. — Cucumber. Некоторые советы по приготовлению
CodeFest 2012. Корсаков С. — Cucumber. Некоторые советы по приготовлениюCodeFest 2012. Корсаков С. — Cucumber. Некоторые советы по приготовлению
CodeFest 2012. Корсаков С. — Cucumber. Некоторые советы по приготовлению
 
CodeFest 2014. Круглов И. — События на каждом углу. Путешествие в мир системн...
CodeFest 2014. Круглов И. — События на каждом углу. Путешествие в мир системн...CodeFest 2014. Круглов И. — События на каждом углу. Путешествие в мир системн...
CodeFest 2014. Круглов И. — События на каждом углу. Путешествие в мир системн...
 
Ruby gui
Ruby guiRuby gui
Ruby gui
 
CI/CD-приложений на Tarantool: от пустого репозитория — до продакшна
CI/CD-приложений на Tarantool: от пустого репозитория — до продакшнаCI/CD-приложений на Tarantool: от пустого репозитория — до продакшна
CI/CD-приложений на Tarantool: от пустого репозитория — до продакшна
 
Dapper + QueryObject
Dapper + QueryObjectDapper + QueryObject
Dapper + QueryObject
 
Mobile Monday Kiev#1 - How to save time in Mobile Apps Development
Mobile Monday Kiev#1 - How to save time in Mobile Apps DevelopmentMobile Monday Kiev#1 - How to save time in Mobile Apps Development
Mobile Monday Kiev#1 - How to save time in Mobile Apps Development
 
Building the Enterprise infrastructure with PostgreSQL as the basis for stori...
Building the Enterprise infrastructure with PostgreSQL as the basis for stori...Building the Enterprise infrastructure with PostgreSQL as the basis for stori...
Building the Enterprise infrastructure with PostgreSQL as the basis for stori...
 
мониторинг производительности Web приложений на python
мониторинг производительности Web приложений на pythonмониторинг производительности Web приложений на python
мониторинг производительности Web приложений на python
 
Ловля сетями. Инструменты отладки сетевых запросов приложений / Дмитрий Рыбак...
Ловля сетями. Инструменты отладки сетевых запросов приложений / Дмитрий Рыбак...Ловля сетями. Инструменты отладки сетевых запросов приложений / Дмитрий Рыбак...
Ловля сетями. Инструменты отладки сетевых запросов приложений / Дмитрий Рыбак...
 
The art of Node.js or how to do something cool using public data by Ilya Zapr...
The art of Node.js or how to do something cool using public data by Ilya Zapr...The art of Node.js or how to do something cool using public data by Ilya Zapr...
The art of Node.js or how to do something cool using public data by Ilya Zapr...
 

Mehr von Yandex

Предсказание оттока игроков из World of Tanks
Предсказание оттока игроков из World of TanksПредсказание оттока игроков из World of Tanks
Предсказание оттока игроков из World of TanksYandex
 
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...Yandex
 
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров ЯндексаСтруктурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров ЯндексаYandex
 
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров ЯндексаПредставление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров ЯндексаYandex
 
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...Yandex
 
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...Yandex
 
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...Yandex
 
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...Yandex
 
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...Yandex
 
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...Yandex
 
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...Yandex
 
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...Yandex
 
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеровКак защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеровYandex
 
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...Yandex
 
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...Yandex
 
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...Yandex
 
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...Yandex
 
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...Yandex
 
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...Yandex
 
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...Yandex
 

Mehr von Yandex (20)

Предсказание оттока игроков из World of Tanks
Предсказание оттока игроков из World of TanksПредсказание оттока игроков из World of Tanks
Предсказание оттока игроков из World of Tanks
 
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
 
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров ЯндексаСтруктурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
 
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров ЯндексаПредставление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
 
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
 
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
 
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
 
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
 
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
 
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
 
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
 
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
 
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеровКак защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
 
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
 
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
 
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
 
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
 
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
 
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
 
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
 

Антон Тюрин — Облачная платформа Cocaine — облако своими руками