SlideShare ist ein Scribd-Unternehmen logo
1 von 18
Downloaden Sie, um offline zu lesen
WebSocket for Dummies
Bartosz Zaczyński
bartosz.zaczynski@grandparade.co.uk
TCP/IP Socket
http://www.freeimages.co.uk/
Protocol
http://www.freeimages.co.uk/
Protocol: telnet
Protocol: HTTP
Protocol: HTTPS
Protocol: fixed length message
Protocol: message delimiter
Example: Betradar TCP/SSL
@tornado.gen.coroutine
def receive(self):
"""Read CRLF-delimited messages and push them onto the queue."""
try:
if not self.iostream.closed():
message_body = yield self.iostream.read_until('rnrn')
logger.debug('Received message: %s', message_body.strip())
received_at = datetime.datetime.utcnow()
message = parser.parse(message_body, received_at)
if message is not None:
if self.is_whitelisted(message):
self.messages.enqueue(message)
self.log(message)
self.ioloop.add_callback(self.receive)
except tornado.iostream.StreamClosedError:
if not self._closing:
logger.error('Betradar connection closed by remote endpoint')
self.heartbeat.stop()
if self.on_closed:
self.on_closed()
WebSocket: handshake
WebSocket: server frame
WebSocket: client frame
WebSocket: JavaScript API
<!DOCTYPE html>
<html>
<head>
<title>WebSocket Demo</title>
<script>
var ws = new WebSocket("ws://localhost:8080/websocket");
ws.onopen = function(event) { console.log("open"); };
ws.onclose = function(event) { console.log("closed"); };
ws.onerror = function(event) { console.log("error"); };
ws.onmessage = function(event) { console.log(event.data); };
function onButtonClick() {
ws.send(document.getElementById("message").value)
}
</script>
</head>
<body>
<input type="text" id="message">
<button type="button" onclick="onButtonClick();">Send</button>
</body>
</html>
WebSocket: JavaScript libs
var ws = STOMP.over(new SockJS("/websocket"));
var ws = io.connect("http://localhost:8080/websocket");
UNSUBSCRIBE
id:sub-0
u0000
SUBSCRIBE
id:sub-0
destination:/topic/chat.all
u0000
WebSocket: sub protocol
CONNECT
accept-version:1.1,1.0
heart-beat:10000,10000
u0000
CONNECTEDversion:1.1heart-beat:0,0
u0000
MESSAGE
subscription:sub-0
message-id:007
destination:/topic/chat.all
content-type:text/plain
content-length:11
hello worldu0000
SEND
destination:/topic/chat.all
content-type:text/plain
hello worldu0000
Debugging
Summary
1. Lightweight binary protocol on top of TCP.
2. Different from HTTP (except for the handshake).
3. Replaces AJAX polling and plug­ins such as Flash.
Q&A
Bartosz Zaczyński
bartosz.zaczynski@grandparade.co.uk

Weitere ähnliche Inhalte

Was ist angesagt?

OSMC 2012 | Distributed Monitoring mit NSClient++ by Michael Medin
OSMC 2012 | Distributed Monitoring mit NSClient++ by Michael MedinOSMC 2012 | Distributed Monitoring mit NSClient++ by Michael Medin
OSMC 2012 | Distributed Monitoring mit NSClient++ by Michael MedinNETWAYS
 
Using MMS to Build New Environments
Using MMS to Build New EnvironmentsUsing MMS to Build New Environments
Using MMS to Build New EnvironmentsMongoDB
 
Buffer overflow for Beginners
Buffer overflow for BeginnersBuffer overflow for Beginners
Buffer overflow for BeginnersAjin Abraham
 
Smb 3-odx-traffic
Smb 3-odx-trafficSmb 3-odx-traffic
Smb 3-odx-trafficgordonross
 
Uable to do ssh from the RedHat Linux machine to Netapp filer 7 mode storage ...
Uable to do ssh from the RedHat Linux machine to Netapp filer 7 mode storage ...Uable to do ssh from the RedHat Linux machine to Netapp filer 7 mode storage ...
Uable to do ssh from the RedHat Linux machine to Netapp filer 7 mode storage ...Saroj Sahu
 
Dicas e truques de otimização de websites python
Dicas e truques de otimização de websites pythonDicas e truques de otimização de websites python
Dicas e truques de otimização de websites pythonFabiano Weimar
 
Mastering JUNOS DHCP
Mastering JUNOS DHCPMastering JUNOS DHCP
Mastering JUNOS DHCPZenSekibe
 
Metodologias de Programação IV - Aula 4, Secção 2 - Suporte para sessões no p...
Metodologias de Programação IV - Aula 4, Secção 2 - Suporte para sessões no p...Metodologias de Programação IV - Aula 4, Secção 2 - Suporte para sessões no p...
Metodologias de Programação IV - Aula 4, Secção 2 - Suporte para sessões no p...Leonel Morgado
 
Python session.11 By Shanmugam
Python session.11 By ShanmugamPython session.11 By Shanmugam
Python session.11 By ShanmugamNavaneethan Naveen
 
Ngrep commands
Ngrep commandsNgrep commands
Ngrep commandsRishu Seth
 
Asynchronous IO in Rust - Enrico Risa - Codemotion Rome 2017
Asynchronous IO in Rust - Enrico Risa - Codemotion Rome 2017Asynchronous IO in Rust - Enrico Risa - Codemotion Rome 2017
Asynchronous IO in Rust - Enrico Risa - Codemotion Rome 2017Codemotion
 
SMB3 Offload Data Transfer (ODX)
SMB3 Offload Data Transfer (ODX)SMB3 Offload Data Transfer (ODX)
SMB3 Offload Data Transfer (ODX)gordonross
 
Neo4j after 1 year in production
Neo4j after 1 year in productionNeo4j after 1 year in production
Neo4j after 1 year in productionAndrew Nikishaev
 
Efail: Breaking S/MIME and OpenPGP Email Encryption using Exfiltration Channels
Efail: Breaking S/MIME and OpenPGP Email Encryption using Exfiltration ChannelsEfail: Breaking S/MIME and OpenPGP Email Encryption using Exfiltration Channels
Efail: Breaking S/MIME and OpenPGP Email Encryption using Exfiltration ChannelsPriyanka Aash
 
Creating qmgr and allowing remote authorization
Creating qmgr and allowing remote authorizationCreating qmgr and allowing remote authorization
Creating qmgr and allowing remote authorizationRavi Babu
 
TLS/SSL MAC security flaw
TLS/SSL MAC security flawTLS/SSL MAC security flaw
TLS/SSL MAC security flawNate Lawson
 
Harden Security Devices Against Increasingly Sophisticated Evasions
Harden Security Devices Against Increasingly Sophisticated EvasionsHarden Security Devices Against Increasingly Sophisticated Evasions
Harden Security Devices Against Increasingly Sophisticated EvasionsIxia
 

Was ist angesagt? (20)

OSMC 2012 | Distributed Monitoring mit NSClient++ by Michael Medin
OSMC 2012 | Distributed Monitoring mit NSClient++ by Michael MedinOSMC 2012 | Distributed Monitoring mit NSClient++ by Michael Medin
OSMC 2012 | Distributed Monitoring mit NSClient++ by Michael Medin
 
Dos threats and countermeasures
Dos threats and countermeasuresDos threats and countermeasures
Dos threats and countermeasures
 
Using MMS to Build New Environments
Using MMS to Build New EnvironmentsUsing MMS to Build New Environments
Using MMS to Build New Environments
 
WordPress Performance Tuning
WordPress Performance TuningWordPress Performance Tuning
WordPress Performance Tuning
 
Buffer overflow for Beginners
Buffer overflow for BeginnersBuffer overflow for Beginners
Buffer overflow for Beginners
 
Smb 3-odx-traffic
Smb 3-odx-trafficSmb 3-odx-traffic
Smb 3-odx-traffic
 
Uable to do ssh from the RedHat Linux machine to Netapp filer 7 mode storage ...
Uable to do ssh from the RedHat Linux machine to Netapp filer 7 mode storage ...Uable to do ssh from the RedHat Linux machine to Netapp filer 7 mode storage ...
Uable to do ssh from the RedHat Linux machine to Netapp filer 7 mode storage ...
 
Dicas e truques de otimização de websites python
Dicas e truques de otimização de websites pythonDicas e truques de otimização de websites python
Dicas e truques de otimização de websites python
 
Mastering JUNOS DHCP
Mastering JUNOS DHCPMastering JUNOS DHCP
Mastering JUNOS DHCP
 
Metodologias de Programação IV - Aula 4, Secção 2 - Suporte para sessões no p...
Metodologias de Programação IV - Aula 4, Secção 2 - Suporte para sessões no p...Metodologias de Programação IV - Aula 4, Secção 2 - Suporte para sessões no p...
Metodologias de Programação IV - Aula 4, Secção 2 - Suporte para sessões no p...
 
Python session.11 By Shanmugam
Python session.11 By ShanmugamPython session.11 By Shanmugam
Python session.11 By Shanmugam
 
Ngrep commands
Ngrep commandsNgrep commands
Ngrep commands
 
Asynchronous IO in Rust - Enrico Risa - Codemotion Rome 2017
Asynchronous IO in Rust - Enrico Risa - Codemotion Rome 2017Asynchronous IO in Rust - Enrico Risa - Codemotion Rome 2017
Asynchronous IO in Rust - Enrico Risa - Codemotion Rome 2017
 
Client–server model
Client–server modelClient–server model
Client–server model
 
SMB3 Offload Data Transfer (ODX)
SMB3 Offload Data Transfer (ODX)SMB3 Offload Data Transfer (ODX)
SMB3 Offload Data Transfer (ODX)
 
Neo4j after 1 year in production
Neo4j after 1 year in productionNeo4j after 1 year in production
Neo4j after 1 year in production
 
Efail: Breaking S/MIME and OpenPGP Email Encryption using Exfiltration Channels
Efail: Breaking S/MIME and OpenPGP Email Encryption using Exfiltration ChannelsEfail: Breaking S/MIME and OpenPGP Email Encryption using Exfiltration Channels
Efail: Breaking S/MIME and OpenPGP Email Encryption using Exfiltration Channels
 
Creating qmgr and allowing remote authorization
Creating qmgr and allowing remote authorizationCreating qmgr and allowing remote authorization
Creating qmgr and allowing remote authorization
 
TLS/SSL MAC security flaw
TLS/SSL MAC security flawTLS/SSL MAC security flaw
TLS/SSL MAC security flaw
 
Harden Security Devices Against Increasingly Sophisticated Evasions
Harden Security Devices Against Increasingly Sophisticated EvasionsHarden Security Devices Against Increasingly Sophisticated Evasions
Harden Security Devices Against Increasingly Sophisticated Evasions
 

Ähnlich wie Bartosz Zaczyński (Grand Parade Poland) - WebSocket for Dummies

How (un)secure is SSL/TLS?
How (un)secure is SSL/TLS?How (un)secure is SSL/TLS?
How (un)secure is SSL/TLS?Microsoft
 
Rpi python web
Rpi python webRpi python web
Rpi python websewoo lee
 
Web Application Security 101 - 02 The Basics
Web Application Security 101 - 02 The BasicsWeb Application Security 101 - 02 The Basics
Web Application Security 101 - 02 The BasicsWebsecurify
 
IBM dwLive, "Internet & HTTP - 잃어버린 패킷을 찾아서..."
IBM dwLive, "Internet & HTTP - 잃어버린 패킷을 찾아서..."IBM dwLive, "Internet & HTTP - 잃어버린 패킷을 찾아서..."
IBM dwLive, "Internet & HTTP - 잃어버린 패킷을 찾아서..."Dongwook Lee
 
OpenSSL Basic Function Call Flow
OpenSSL Basic Function Call FlowOpenSSL Basic Function Call Flow
OpenSSL Basic Function Call FlowWilliam Lee
 
Проксирование HTTP-запросов web-акселератором / Александр Крижановский (Tempe...
Проксирование HTTP-запросов web-акселератором / Александр Крижановский (Tempe...Проксирование HTTP-запросов web-акселератором / Александр Крижановский (Tempe...
Проксирование HTTP-запросов web-акселератором / Александр Крижановский (Tempe...Ontico
 
Building an inflight entertainment system controller in twisted
Building an inflight entertainment system controller in twistedBuilding an inflight entertainment system controller in twisted
Building an inflight entertainment system controller in twistedDavid Novakovic
 
Nodejs 프로그래밍 ch.3
Nodejs 프로그래밍 ch.3Nodejs 프로그래밍 ch.3
Nodejs 프로그래밍 ch.3HyeonSeok Choi
 
OpenSSL programming (still somewhat initial version)
OpenSSL programming (still somewhat initial version)OpenSSL programming (still somewhat initial version)
OpenSSL programming (still somewhat initial version)Shteryana Shopova
 
Central LogFile Storage. ELK stack Elasticsearch, Logstash and Kibana.
Central LogFile Storage. ELK stack Elasticsearch, Logstash and Kibana.Central LogFile Storage. ELK stack Elasticsearch, Logstash and Kibana.
Central LogFile Storage. ELK stack Elasticsearch, Logstash and Kibana.Airat Khisamov
 
maxbox starter72 multilanguage coding
maxbox starter72 multilanguage codingmaxbox starter72 multilanguage coding
maxbox starter72 multilanguage codingMax Kleiner
 
MySQL Slow Query log Monitoring using Beats & ELK
MySQL Slow Query log Monitoring using Beats & ELKMySQL Slow Query log Monitoring using Beats & ELK
MySQL Slow Query log Monitoring using Beats & ELKYoungHeon (Roy) Kim
 
MySQL Slow Query log Monitoring using Beats & ELK
MySQL Slow Query log Monitoring using Beats & ELKMySQL Slow Query log Monitoring using Beats & ELK
MySQL Slow Query log Monitoring using Beats & ELKI Goo Lee
 
Krzysztof Kotowicz - Hacking HTML5
Krzysztof Kotowicz - Hacking HTML5Krzysztof Kotowicz - Hacking HTML5
Krzysztof Kotowicz - Hacking HTML5DefconRussia
 
jkljklj
jkljkljjkljklj
jkljkljhoefo
 
Layer 7 ddos
Layer 7 ddosLayer 7 ddos
Layer 7 ddosfangjiafu
 

Ähnlich wie Bartosz Zaczyński (Grand Parade Poland) - WebSocket for Dummies (20)

How (un)secure is SSL/TLS?
How (un)secure is SSL/TLS?How (un)secure is SSL/TLS?
How (un)secure is SSL/TLS?
 
Rpi python web
Rpi python webRpi python web
Rpi python web
 
Web Application Security 101 - 02 The Basics
Web Application Security 101 - 02 The BasicsWeb Application Security 101 - 02 The Basics
Web Application Security 101 - 02 The Basics
 
Browser Security
Browser SecurityBrowser Security
Browser Security
 
IBM dwLive, "Internet & HTTP - 잃어버린 패킷을 찾아서..."
IBM dwLive, "Internet & HTTP - 잃어버린 패킷을 찾아서..."IBM dwLive, "Internet & HTTP - 잃어버린 패킷을 찾아서..."
IBM dwLive, "Internet & HTTP - 잃어버린 패킷을 찾아서..."
 
OpenSSL Basic Function Call Flow
OpenSSL Basic Function Call FlowOpenSSL Basic Function Call Flow
OpenSSL Basic Function Call Flow
 
Проксирование HTTP-запросов web-акселератором / Александр Крижановский (Tempe...
Проксирование HTTP-запросов web-акселератором / Александр Крижановский (Tempe...Проксирование HTTP-запросов web-акселератором / Александр Крижановский (Tempe...
Проксирование HTTP-запросов web-акселератором / Александр Крижановский (Tempe...
 
Http request&response
Http request&responseHttp request&response
Http request&response
 
Building an inflight entertainment system controller in twisted
Building an inflight entertainment system controller in twistedBuilding an inflight entertainment system controller in twisted
Building an inflight entertainment system controller in twisted
 
Nodejs 프로그래밍 ch.3
Nodejs 프로그래밍 ch.3Nodejs 프로그래밍 ch.3
Nodejs 프로그래밍 ch.3
 
OpenSSL programming (still somewhat initial version)
OpenSSL programming (still somewhat initial version)OpenSSL programming (still somewhat initial version)
OpenSSL programming (still somewhat initial version)
 
Jetty TLS troubleshooting
Jetty TLS troubleshootingJetty TLS troubleshooting
Jetty TLS troubleshooting
 
Central LogFile Storage. ELK stack Elasticsearch, Logstash and Kibana.
Central LogFile Storage. ELK stack Elasticsearch, Logstash and Kibana.Central LogFile Storage. ELK stack Elasticsearch, Logstash and Kibana.
Central LogFile Storage. ELK stack Elasticsearch, Logstash and Kibana.
 
maxbox starter72 multilanguage coding
maxbox starter72 multilanguage codingmaxbox starter72 multilanguage coding
maxbox starter72 multilanguage coding
 
Rust Hack
Rust HackRust Hack
Rust Hack
 
MySQL Slow Query log Monitoring using Beats & ELK
MySQL Slow Query log Monitoring using Beats & ELKMySQL Slow Query log Monitoring using Beats & ELK
MySQL Slow Query log Monitoring using Beats & ELK
 
MySQL Slow Query log Monitoring using Beats & ELK
MySQL Slow Query log Monitoring using Beats & ELKMySQL Slow Query log Monitoring using Beats & ELK
MySQL Slow Query log Monitoring using Beats & ELK
 
Krzysztof Kotowicz - Hacking HTML5
Krzysztof Kotowicz - Hacking HTML5Krzysztof Kotowicz - Hacking HTML5
Krzysztof Kotowicz - Hacking HTML5
 
jkljklj
jkljkljjkljklj
jkljklj
 
Layer 7 ddos
Layer 7 ddosLayer 7 ddos
Layer 7 ddos
 

Mehr von Business Link Krakow

Bartosz Grzybowski - Continuous integration, czyli code quality matters
Bartosz Grzybowski - Continuous integration, czyli code quality mattersBartosz Grzybowski - Continuous integration, czyli code quality matters
Bartosz Grzybowski - Continuous integration, czyli code quality mattersBusiness Link Krakow
 
Grzegorz Sikorskie - "Gorsze jest lepsze", czyli o dobrych stronach złego kodu
Grzegorz Sikorskie - "Gorsze jest lepsze", czyli o dobrych stronach złego koduGrzegorz Sikorskie - "Gorsze jest lepsze", czyli o dobrych stronach złego kodu
Grzegorz Sikorskie - "Gorsze jest lepsze", czyli o dobrych stronach złego koduBusiness Link Krakow
 
Konrad Kwiatkowski - Type of components in React/Redux
Konrad Kwiatkowski - Type of components in React/ReduxKonrad Kwiatkowski - Type of components in React/Redux
Konrad Kwiatkowski - Type of components in React/ReduxBusiness Link Krakow
 
Oferta miejsca pracy Business Link Kraków
Oferta miejsca pracy Business Link KrakówOferta miejsca pracy Business Link Kraków
Oferta miejsca pracy Business Link KrakówBusiness Link Krakow
 
Paweł Kowalczyk (Codete) - Continuous integration for iOS
Paweł Kowalczyk (Codete) - Continuous integration for iOSPaweł Kowalczyk (Codete) - Continuous integration for iOS
Paweł Kowalczyk (Codete) - Continuous integration for iOSBusiness Link Krakow
 
Mateusz Zając (Codete) - Swift in Production
Mateusz Zając (Codete)  - Swift in ProductionMateusz Zając (Codete)  - Swift in Production
Mateusz Zając (Codete) - Swift in ProductionBusiness Link Krakow
 
Jakub Mrowiec (Grand Parade Poland) - Monumentum Case Study
Jakub Mrowiec (Grand Parade Poland) - Monumentum Case StudyJakub Mrowiec (Grand Parade Poland) - Monumentum Case Study
Jakub Mrowiec (Grand Parade Poland) - Monumentum Case StudyBusiness Link Krakow
 
Piotr Grabski-Gradziński (VML) - To jak zrobimy ten projekt? Czyli o doborze ...
Piotr Grabski-Gradziński (VML) - To jak zrobimy ten projekt? Czyli o doborze ...Piotr Grabski-Gradziński (VML) - To jak zrobimy ten projekt? Czyli o doborze ...
Piotr Grabski-Gradziński (VML) - To jak zrobimy ten projekt? Czyli o doborze ...Business Link Krakow
 
Paweł Dyrek (Codete) - Product Delivery
Paweł Dyrek (Codete) - Product DeliveryPaweł Dyrek (Codete) - Product Delivery
Paweł Dyrek (Codete) - Product DeliveryBusiness Link Krakow
 
Maciej Malarz (Codete) - Database? Meh, implementation detail
Maciej Malarz (Codete) - Database? Meh, implementation detailMaciej Malarz (Codete) - Database? Meh, implementation detail
Maciej Malarz (Codete) - Database? Meh, implementation detailBusiness Link Krakow
 
Mateusz Chłodnicki - Case study: Shuttout.com
Mateusz Chłodnicki - Case study: Shuttout.comMateusz Chłodnicki - Case study: Shuttout.com
Mateusz Chłodnicki - Case study: Shuttout.comBusiness Link Krakow
 
Tomasz Chołast - Case study: zrzutka.pl
Tomasz Chołast - Case study: zrzutka.plTomasz Chołast - Case study: zrzutka.pl
Tomasz Chołast - Case study: zrzutka.plBusiness Link Krakow
 
Mateusz Hauschild - Jak crowdfunding zmienił rynek gier planszowych?
Mateusz Hauschild - Jak crowdfunding zmienił rynek gier planszowych?Mateusz Hauschild - Jak crowdfunding zmienił rynek gier planszowych?
Mateusz Hauschild - Jak crowdfunding zmienił rynek gier planszowych?Business Link Krakow
 
Filip Karkosz & Dominik Szloński - Jak z zaangażowania konsumenta uczynić źró...
Filip Karkosz & Dominik Szloński - Jak z zaangażowania konsumenta uczynić źró...Filip Karkosz & Dominik Szloński - Jak z zaangażowania konsumenta uczynić źró...
Filip Karkosz & Dominik Szloński - Jak z zaangażowania konsumenta uczynić źró...Business Link Krakow
 
Bartosz Filip Malinowski - Crowdsourcing dla Starbucksa, małych startupów i o...
Bartosz Filip Malinowski - Crowdsourcing dla Starbucksa, małych startupów i o...Bartosz Filip Malinowski - Crowdsourcing dla Starbucksa, małych startupów i o...
Bartosz Filip Malinowski - Crowdsourcing dla Starbucksa, małych startupów i o...Business Link Krakow
 
Crowdinvesting - inwestycyjne modele crowdfundingu - Karol Król
Crowdinvesting - inwestycyjne modele crowdfundingu - Karol KrólCrowdinvesting - inwestycyjne modele crowdfundingu - Karol Król
Crowdinvesting - inwestycyjne modele crowdfundingu - Karol KrólBusiness Link Krakow
 
Fundusze UE - nowe szanse, nowe możliwości dla start-up na lata 2014-2020
Fundusze UE - nowe szanse, nowe możliwości dla start-up na lata 2014-2020Fundusze UE - nowe szanse, nowe możliwości dla start-up na lata 2014-2020
Fundusze UE - nowe szanse, nowe możliwości dla start-up na lata 2014-2020Business Link Krakow
 

Mehr von Business Link Krakow (20)

Bartosz Grzybowski - Continuous integration, czyli code quality matters
Bartosz Grzybowski - Continuous integration, czyli code quality mattersBartosz Grzybowski - Continuous integration, czyli code quality matters
Bartosz Grzybowski - Continuous integration, czyli code quality matters
 
Grzegorz Sikorskie - "Gorsze jest lepsze", czyli o dobrych stronach złego kodu
Grzegorz Sikorskie - "Gorsze jest lepsze", czyli o dobrych stronach złego koduGrzegorz Sikorskie - "Gorsze jest lepsze", czyli o dobrych stronach złego kodu
Grzegorz Sikorskie - "Gorsze jest lepsze", czyli o dobrych stronach złego kodu
 
Konrad Kwiatkowski - Type of components in React/Redux
Konrad Kwiatkowski - Type of components in React/ReduxKonrad Kwiatkowski - Type of components in React/Redux
Konrad Kwiatkowski - Type of components in React/Redux
 
Oferta sale
Oferta saleOferta sale
Oferta sale
 
Oferta miejsca pracy Business Link Kraków
Oferta miejsca pracy Business Link KrakówOferta miejsca pracy Business Link Kraków
Oferta miejsca pracy Business Link Kraków
 
Paweł Kowalczyk (Codete) - Continuous integration for iOS
Paweł Kowalczyk (Codete) - Continuous integration for iOSPaweł Kowalczyk (Codete) - Continuous integration for iOS
Paweł Kowalczyk (Codete) - Continuous integration for iOS
 
Mateusz Zając (Codete) - Swift in Production
Mateusz Zając (Codete)  - Swift in ProductionMateusz Zając (Codete)  - Swift in Production
Mateusz Zając (Codete) - Swift in Production
 
Jakub Mrowiec (Grand Parade Poland) - Monumentum Case Study
Jakub Mrowiec (Grand Parade Poland) - Monumentum Case StudyJakub Mrowiec (Grand Parade Poland) - Monumentum Case Study
Jakub Mrowiec (Grand Parade Poland) - Monumentum Case Study
 
Piotr Grabski-Gradziński (VML) - To jak zrobimy ten projekt? Czyli o doborze ...
Piotr Grabski-Gradziński (VML) - To jak zrobimy ten projekt? Czyli o doborze ...Piotr Grabski-Gradziński (VML) - To jak zrobimy ten projekt? Czyli o doborze ...
Piotr Grabski-Gradziński (VML) - To jak zrobimy ten projekt? Czyli o doborze ...
 
Paweł Dyrek (Codete) - Product Delivery
Paweł Dyrek (Codete) - Product DeliveryPaweł Dyrek (Codete) - Product Delivery
Paweł Dyrek (Codete) - Product Delivery
 
Maciej Malarz (Codete) - Database? Meh, implementation detail
Maciej Malarz (Codete) - Database? Meh, implementation detailMaciej Malarz (Codete) - Database? Meh, implementation detail
Maciej Malarz (Codete) - Database? Meh, implementation detail
 
Mateusz Chłodnicki - Case study: Shuttout.com
Mateusz Chłodnicki - Case study: Shuttout.comMateusz Chłodnicki - Case study: Shuttout.com
Mateusz Chłodnicki - Case study: Shuttout.com
 
Tomasz Chołast - Case study: zrzutka.pl
Tomasz Chołast - Case study: zrzutka.plTomasz Chołast - Case study: zrzutka.pl
Tomasz Chołast - Case study: zrzutka.pl
 
Mateusz Hauschild - Jak crowdfunding zmienił rynek gier planszowych?
Mateusz Hauschild - Jak crowdfunding zmienił rynek gier planszowych?Mateusz Hauschild - Jak crowdfunding zmienił rynek gier planszowych?
Mateusz Hauschild - Jak crowdfunding zmienił rynek gier planszowych?
 
Filip Karkosz & Dominik Szloński - Jak z zaangażowania konsumenta uczynić źró...
Filip Karkosz & Dominik Szloński - Jak z zaangażowania konsumenta uczynić źró...Filip Karkosz & Dominik Szloński - Jak z zaangażowania konsumenta uczynić źró...
Filip Karkosz & Dominik Szloński - Jak z zaangażowania konsumenta uczynić źró...
 
Marek Cieśla - Kickstarter.com
Marek Cieśla - Kickstarter.comMarek Cieśla - Kickstarter.com
Marek Cieśla - Kickstarter.com
 
Bartosz Filip Malinowski - Crowdsourcing dla Starbucksa, małych startupów i o...
Bartosz Filip Malinowski - Crowdsourcing dla Starbucksa, małych startupów i o...Bartosz Filip Malinowski - Crowdsourcing dla Starbucksa, małych startupów i o...
Bartosz Filip Malinowski - Crowdsourcing dla Starbucksa, małych startupów i o...
 
Crowdinvesting - inwestycyjne modele crowdfundingu - Karol Król
Crowdinvesting - inwestycyjne modele crowdfundingu - Karol KrólCrowdinvesting - inwestycyjne modele crowdfundingu - Karol Król
Crowdinvesting - inwestycyjne modele crowdfundingu - Karol Król
 
Fundusze UE - nowe szanse, nowe możliwości dla start-up na lata 2014-2020
Fundusze UE - nowe szanse, nowe możliwości dla start-up na lata 2014-2020Fundusze UE - nowe szanse, nowe możliwości dla start-up na lata 2014-2020
Fundusze UE - nowe szanse, nowe możliwości dla start-up na lata 2014-2020
 
Pułapki podatkowe
Pułapki podatkowe Pułapki podatkowe
Pułapki podatkowe
 

Kürzlich hochgeladen

BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort ServiceDelhi Call girls
 
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun serviceCALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun serviceanilsa9823
 
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCRFULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCRnishacall1
 
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost LoverPowerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost LoverPsychicRuben LoveSpells
 
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,Pooja Nehwal
 
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual serviceanilsa9823
 
9892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x79892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x7Pooja Nehwal
 

Kürzlich hochgeladen (7)

BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
 
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun serviceCALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
 
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCRFULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
 
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost LoverPowerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
 
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
 
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
 
9892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x79892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x7
 

Bartosz Zaczyński (Grand Parade Poland) - WebSocket for Dummies