SlideShare a Scribd company logo
1 of 62
Download to read offline
Client-Server Hybrid
Applications with Vaadin
Artur Signell
Vaadin
By combining a sophisticated turbocharged
and direct-injected three-cylinder engine
combined with multiple electric motors for
all-wheel drive and a total system output of
362 horsepower and 420 lb-ft. of torque.
Thanks to the car's low curb weight, 0 to 60
mph will come in right around 4.4 seconds

i8
8.6L/100km

2.5L/100km

0L/100km

13€/100km

4€/100km

1€/100km

550km range"

500km range"

450km range"

gas stations

everywhere

gas stations

everywhere

growing charge

station network
What about apps?
Web application layers

Backend
server

Web
server

Communication

JavaScript
Web application layers
Client-side UI
Backend
server

Web
server

Communication

JavaScript
Web application layers

Backend
server

Web
server

Server-side UI

Communication

JavaScript

Automated
Web application layers

JS

Backend
server

Web
server

Communication

required

required

required

Java to
JavaScript

JavaScript

required
Web application layers
Backend
server

Web
server

Communication

Java to
JavaScript

JavaScript

GWT

required

required

required

JS

Client-side UI

required

required

required

required

optional

required
Web application layers

JS

GWT Vaadin

Backend
server

Web
server

Communication

Java to
JavaScript

JavaScript

required

required

optional

optional

optional

required

required

required

required

optional

required

required

required

Server-side UI & Client-side UI

required
Web application layers

JS

GWT Vaadin

Backend
server

Web
server

Communication

Java to
JavaScript

JavaScript

required

required

optional

optional

optional

required

required

1 layer

required

required

required

vs

required

3 layers

-50% dev. time
required
-50% maintenance
vs

optional

required

full control over DOM
and communications
ity

tiv

or

df

ize

tim uc
Op
od
Pr

O

tim
p

fo
ed
iz

e rol
d ont
i C
s

r
e
v
r
e
S

r

tien
Cl
How does the serverside UI work, really?
•
•
•
•

Initial HTML
CSS (theme)
Images
JavaScript

"

1.2M total

compress

307k
reduced
widgetset

135k
• name=”Joonas”
• button clicked
"

261 bytes

• name=”Joonas”
• button clicked
"

261 bytes

• Add notification
"

267 bytes

HybridApps
Client-side
Use for

Server-side
Use for

•

Offline"

•

Most places ( - 50% cost )"

•

Low latency interaction"

•

High security"

•

Maximum scalability

•

Utilizing full Java platform

Hybrid
Benefits of the both sides, but adds complexity
Vaadin += GWT
GWT
Compatible
http://demo.vaadin.com/parking/
HybridArchitecture
Web Page Title

Google

http://domain.com

Client-side GWT-RPC

Server-side

First name
Table cell
Table cell
Table cell
Table cell
Table cell

Client-side Vaadin-RPC

Last name
Table cell
Table cell
Table cell
Table cell
Table cell

Table cell

Table cell

Table cell

Table cell

Table cell

Table cell

Table cell

Table cell

Delete

New

Last name

Phone number

rd mountains,
Far far away, behind the wo
ia and
far from the countries Vokal
the blind texts.
Consonantia, there live
okmarksgrove
Separated they live in Bo
mantics, a
right at the coast of the Se
large language ocean.

Table cell

Table cell

Edit

First name

Server-side

Email address

Phone number

Email address

Save

Offline

Cancel

n flows by their
A small river named Dude
the necessary
place and supplies it with
matic country, in
regelialia. It is a paradise
tences fly into
which roasted parts of sen
your mouth.
ng has no
Even the all-powerful Pointi
ts it is an
control about the blind tex
ic life One day
almost unorthograph
d text by the
however a small line of blin
cided to leave
name of Lorem Ipsum de
r. The Big
for the far World of Gramma
to do so,
Oxmox advised her not
nds of bad
because there were thousa
Commas.

https://github.com/jojule/hybrid
AddressbookBackend

Address

Impl
Address
public class Address {	
	 String firstName, lastName;	
	 String phoneNumber, emailAddress;	
	 int id;	
...	
}

AddressbookBackend
	

public Collection<Address> getAddressess();	

"
	

public Address getAddress(int id);	

"
	

public void storeAddress(Address address);	

"
	

public void deleteAddress(int id);	

"
	

public Address newAddress();	

Impl
public class AddressbookBackendImpl implements AddressbookBackend {	
	 private final LinkedHashMap<Integer, Address> addresses;	
...	
}
Server-side"
(with Vaadin)

Client-side"
(with GWT-RPC)

AddressbookEditor

Frontend
Backend

Address

AddressbookBackend

Impl
Server-side"
(with Vaadin)

Client-side"
(with GWT-RPC)

AddressbookEditor
create

Connector
Client
Server

AddressbookEditor

place

View
Frontend
Backend

Address

AddressbookBackend

Impl
Server-side"
(with Vaadin)

Client-side"
(with GWT-RPC)

AddressbookEditor
create

Connector
Client
Server

AddressbookEditor

place

View

RPCServlet

Frontend

Service

implements

Backend

Address

AddressbookBackend

Impl
Server-side"
(with Vaadin)

Client-side"
(with GWT-RPC)

AddressbookEditor
create
implements

Proxy


Connector

(generated)

Client

ServiceAsync

Server

AddressbookEditor

equal

place

View

RPCServlet

Frontend

Service

implements

Backend

Address

AddressbookBackend

Impl
Estimating
Complexity
Client-side

4 classes
2 interfaces
~ 500 LOC

Server-side

3X

1 class
"

190 LOC
Vaadin Communication
"

RPC + State
Demo

Widget

Connector
client
server

State
RPC

Component
Client-side"

Client-side"

(with GWT-RPC)

(with Vaadin Connector)

AddressbookEditor
create

create

Connector

implements

Proxy


Connector

(generated)

Client

ServiceAsync

Server

equal

place

View

AddressbookEditor

RPCServlet

Frontend

Service

Client


RPC

State
place

View

implements

Backend

Address

AddressbookBackend

Impl

Server


RPC
@Push
Offline
Offline Mode
•

Client-side UI needed as a basis

•

Offline bootstrap

•

Local storage database

2X

client-side

Offline detection

•

at least

5X

>
server-side

•

2-way data synchronization (app specific)

•

Modification logs

•

Sharding logic
Use Offline
only when
really needed
Client-side

Hybrid

Server-side

3 layer UI

1-3 layer UI

1 layer UI

Full control"

You choose"

Automated"

offline ready

architecture

offline for chosen

functionality

connection to

server required
Download for Free
vaadin.com/book

-93-

1970
-1

01

728 pages
PDF, ePub, HTML
Apache
License
community of

100.000+
developers
?

Artur Signell
artur@vaadin.com

More Related Content

Viewers also liked

Koncert życzeń + niekończące się zmiany w koncepcji = katastrofa? Jak to posk...
Koncert życzeń + niekończące się zmiany w koncepcji = katastrofa? Jak to posk...Koncert życzeń + niekończące się zmiany w koncepcji = katastrofa? Jak to posk...
Koncert życzeń + niekończące się zmiany w koncepcji = katastrofa? Jak to posk...Future Processing
 
Behaviour Driven Development
Behaviour Driven DevelopmentBehaviour Driven Development
Behaviour Driven DevelopmentFuture Processing
 
[QE 2015] Jarosław Pałka - Systematyczny architekt na drodze ku planowanemu p...
[QE 2015] Jarosław Pałka - Systematyczny architekt na drodze ku planowanemu p...[QE 2015] Jarosław Pałka - Systematyczny architekt na drodze ku planowanemu p...
[QE 2015] Jarosław Pałka - Systematyczny architekt na drodze ku planowanemu p...Future Processing
 
Biznes nie dorósł do Agile.
Biznes nie dorósł do Agile.Biznes nie dorósł do Agile.
Biznes nie dorósł do Agile.Future Processing
 
Bilans korzyści i kosztów z automatyzacji.
Bilans korzyści i kosztów z automatyzacji.Bilans korzyści i kosztów z automatyzacji.
Bilans korzyści i kosztów z automatyzacji.Future Processing
 
Continuous Delivery – kolejny krok na drodze do Agile.
Continuous Delivery – kolejny krok na drodze do Agile.Continuous Delivery – kolejny krok na drodze do Agile.
Continuous Delivery – kolejny krok na drodze do Agile.Future Processing
 
Nie rozwiązuj w testach jednostkowych problemów z testowanym kodem.
Nie rozwiązuj w testach jednostkowych problemów z testowanym kodem.Nie rozwiązuj w testach jednostkowych problemów z testowanym kodem.
Nie rozwiązuj w testach jednostkowych problemów z testowanym kodem.Future Processing
 
Michał Sajdak, Testy bezpieczeństwa -­‐ teoria a praktyka
Michał Sajdak, Testy bezpieczeństwa -­‐ teoria a praktykaMichał Sajdak, Testy bezpieczeństwa -­‐ teoria a praktyka
Michał Sajdak, Testy bezpieczeństwa -­‐ teoria a praktykaFuture Processing
 
Jak aspekty uporządkują twój kod.
Jak aspekty uporządkują twój kod.Jak aspekty uporządkują twój kod.
Jak aspekty uporządkują twój kod.Future Processing
 
[QE 2015] Krzysztof Trzewiczek - Specification by Example w praktyce
[QE 2015] Krzysztof Trzewiczek - Specification by Example w praktyce[QE 2015] Krzysztof Trzewiczek - Specification by Example w praktyce
[QE 2015] Krzysztof Trzewiczek - Specification by Example w praktyceFuture Processing
 
[FDD 2016] Krzysztof Bartnicki - Wszechświat kontra programista systemów wbud...
[FDD 2016] Krzysztof Bartnicki - Wszechświat kontra programista systemów wbud...[FDD 2016] Krzysztof Bartnicki - Wszechświat kontra programista systemów wbud...
[FDD 2016] Krzysztof Bartnicki - Wszechświat kontra programista systemów wbud...Future Processing
 
DailyArt – jak zaprojektować aplikację mobilną kochaną przez ludzi?/WUD Siles...
DailyArt – jak zaprojektować aplikację mobilną kochaną przez ludzi?/WUD Siles...DailyArt – jak zaprojektować aplikację mobilną kochaną przez ludzi?/WUD Siles...
DailyArt – jak zaprojektować aplikację mobilną kochaną przez ludzi?/WUD Siles...Future Processing
 
[QE 2015] Mateusz Kocielski - W każdym programie jest jeszcze jeden błąd
[QE 2015] Mateusz Kocielski - W każdym programie jest jeszcze jeden błąd[QE 2015] Mateusz Kocielski - W każdym programie jest jeszcze jeden błąd
[QE 2015] Mateusz Kocielski - W każdym programie jest jeszcze jeden błądFuture Processing
 
TDD – w poszukiwaniu źródeł jakości.
TDD – w poszukiwaniu źródeł jakości.TDD – w poszukiwaniu źródeł jakości.
TDD – w poszukiwaniu źródeł jakości.Future Processing
 
Wyboista droga do dobrego kodu. ...
Wyboista droga do dobrego kodu.                                              ...Wyboista droga do dobrego kodu.                                              ...
Wyboista droga do dobrego kodu. ...Future Processing
 
[QE 2015] Katarzyna Mrowca - Refaktoring historyjek
[QE 2015] Katarzyna Mrowca - Refaktoring historyjek[QE 2015] Katarzyna Mrowca - Refaktoring historyjek
[QE 2015] Katarzyna Mrowca - Refaktoring historyjekFuture Processing
 
[FDD2016] Rafał Brzoska - Angular2 - nadchodzi nowe!
[FDD2016] Rafał Brzoska - Angular2 - nadchodzi nowe![FDD2016] Rafał Brzoska - Angular2 - nadchodzi nowe!
[FDD2016] Rafał Brzoska - Angular2 - nadchodzi nowe!Future Processing
 
[QE 2015] Łukasz Szydło - Continuous Delivery – Architektura i Praktyka
[QE 2015] Łukasz Szydło - Continuous Delivery – Architektura i Praktyka[QE 2015] Łukasz Szydło - Continuous Delivery – Architektura i Praktyka
[QE 2015] Łukasz Szydło - Continuous Delivery – Architektura i PraktykaFuture Processing
 
[FDD 2016] Jarosław Porwoł - Koncert na 144 rdzenie i czterech dyrygentów
[FDD 2016] Jarosław Porwoł - Koncert na 144 rdzenie i czterech dyrygentów[FDD 2016] Jarosław Porwoł - Koncert na 144 rdzenie i czterech dyrygentów
[FDD 2016] Jarosław Porwoł - Koncert na 144 rdzenie i czterech dyrygentówFuture Processing
 

Viewers also liked (20)

Koncert życzeń + niekończące się zmiany w koncepcji = katastrofa? Jak to posk...
Koncert życzeń + niekończące się zmiany w koncepcji = katastrofa? Jak to posk...Koncert życzeń + niekończące się zmiany w koncepcji = katastrofa? Jak to posk...
Koncert życzeń + niekończące się zmiany w koncepcji = katastrofa? Jak to posk...
 
Behaviour Driven Development
Behaviour Driven DevelopmentBehaviour Driven Development
Behaviour Driven Development
 
[QE 2015] Jarosław Pałka - Systematyczny architekt na drodze ku planowanemu p...
[QE 2015] Jarosław Pałka - Systematyczny architekt na drodze ku planowanemu p...[QE 2015] Jarosław Pałka - Systematyczny architekt na drodze ku planowanemu p...
[QE 2015] Jarosław Pałka - Systematyczny architekt na drodze ku planowanemu p...
 
Biznes nie dorósł do Agile.
Biznes nie dorósł do Agile.Biznes nie dorósł do Agile.
Biznes nie dorósł do Agile.
 
Jakość jest w nas
Jakość jest w nasJakość jest w nas
Jakość jest w nas
 
Bilans korzyści i kosztów z automatyzacji.
Bilans korzyści i kosztów z automatyzacji.Bilans korzyści i kosztów z automatyzacji.
Bilans korzyści i kosztów z automatyzacji.
 
Continuous Delivery – kolejny krok na drodze do Agile.
Continuous Delivery – kolejny krok na drodze do Agile.Continuous Delivery – kolejny krok na drodze do Agile.
Continuous Delivery – kolejny krok na drodze do Agile.
 
Nie rozwiązuj w testach jednostkowych problemów z testowanym kodem.
Nie rozwiązuj w testach jednostkowych problemów z testowanym kodem.Nie rozwiązuj w testach jednostkowych problemów z testowanym kodem.
Nie rozwiązuj w testach jednostkowych problemów z testowanym kodem.
 
Michał Sajdak, Testy bezpieczeństwa -­‐ teoria a praktyka
Michał Sajdak, Testy bezpieczeństwa -­‐ teoria a praktykaMichał Sajdak, Testy bezpieczeństwa -­‐ teoria a praktyka
Michał Sajdak, Testy bezpieczeństwa -­‐ teoria a praktyka
 
Jak aspekty uporządkują twój kod.
Jak aspekty uporządkują twój kod.Jak aspekty uporządkują twój kod.
Jak aspekty uporządkują twój kod.
 
[QE 2015] Krzysztof Trzewiczek - Specification by Example w praktyce
[QE 2015] Krzysztof Trzewiczek - Specification by Example w praktyce[QE 2015] Krzysztof Trzewiczek - Specification by Example w praktyce
[QE 2015] Krzysztof Trzewiczek - Specification by Example w praktyce
 
[FDD 2016] Krzysztof Bartnicki - Wszechświat kontra programista systemów wbud...
[FDD 2016] Krzysztof Bartnicki - Wszechświat kontra programista systemów wbud...[FDD 2016] Krzysztof Bartnicki - Wszechświat kontra programista systemów wbud...
[FDD 2016] Krzysztof Bartnicki - Wszechświat kontra programista systemów wbud...
 
DailyArt – jak zaprojektować aplikację mobilną kochaną przez ludzi?/WUD Siles...
DailyArt – jak zaprojektować aplikację mobilną kochaną przez ludzi?/WUD Siles...DailyArt – jak zaprojektować aplikację mobilną kochaną przez ludzi?/WUD Siles...
DailyArt – jak zaprojektować aplikację mobilną kochaną przez ludzi?/WUD Siles...
 
[QE 2015] Mateusz Kocielski - W każdym programie jest jeszcze jeden błąd
[QE 2015] Mateusz Kocielski - W każdym programie jest jeszcze jeden błąd[QE 2015] Mateusz Kocielski - W każdym programie jest jeszcze jeden błąd
[QE 2015] Mateusz Kocielski - W każdym programie jest jeszcze jeden błąd
 
TDD – w poszukiwaniu źródeł jakości.
TDD – w poszukiwaniu źródeł jakości.TDD – w poszukiwaniu źródeł jakości.
TDD – w poszukiwaniu źródeł jakości.
 
Wyboista droga do dobrego kodu. ...
Wyboista droga do dobrego kodu.                                              ...Wyboista droga do dobrego kodu.                                              ...
Wyboista droga do dobrego kodu. ...
 
[QE 2015] Katarzyna Mrowca - Refaktoring historyjek
[QE 2015] Katarzyna Mrowca - Refaktoring historyjek[QE 2015] Katarzyna Mrowca - Refaktoring historyjek
[QE 2015] Katarzyna Mrowca - Refaktoring historyjek
 
[FDD2016] Rafał Brzoska - Angular2 - nadchodzi nowe!
[FDD2016] Rafał Brzoska - Angular2 - nadchodzi nowe![FDD2016] Rafał Brzoska - Angular2 - nadchodzi nowe!
[FDD2016] Rafał Brzoska - Angular2 - nadchodzi nowe!
 
[QE 2015] Łukasz Szydło - Continuous Delivery – Architektura i Praktyka
[QE 2015] Łukasz Szydło - Continuous Delivery – Architektura i Praktyka[QE 2015] Łukasz Szydło - Continuous Delivery – Architektura i Praktyka
[QE 2015] Łukasz Szydło - Continuous Delivery – Architektura i Praktyka
 
[FDD 2016] Jarosław Porwoł - Koncert na 144 rdzenie i czterech dyrygentów
[FDD 2016] Jarosław Porwoł - Koncert na 144 rdzenie i czterech dyrygentów[FDD 2016] Jarosław Porwoł - Koncert na 144 rdzenie i czterech dyrygentów
[FDD 2016] Jarosław Porwoł - Koncert na 144 rdzenie i czterech dyrygentów
 

Similar to Client-Server Hybrid Applications with Vaadin

Introduction to Vaadin, GWT.create 2015
Introduction to Vaadin, GWT.create 2015Introduction to Vaadin, GWT.create 2015
Introduction to Vaadin, GWT.create 2015hezamu
 
Vaadin Introduction, 7.3 edition
Vaadin Introduction, 7.3 editionVaadin Introduction, 7.3 edition
Vaadin Introduction, 7.3 editionJoonas Lehtinen
 
A Day in the Life of a Cloud Network Engineer at Netflix - NET303 - re:Invent...
A Day in the Life of a Cloud Network Engineer at Netflix - NET303 - re:Invent...A Day in the Life of a Cloud Network Engineer at Netflix - NET303 - re:Invent...
A Day in the Life of a Cloud Network Engineer at Netflix - NET303 - re:Invent...Amazon Web Services
 
The A to Z of developing for the web
The A to Z of developing for the webThe A to Z of developing for the web
The A to Z of developing for the webMatt Wood
 
KLab 2019 Meetup - TypeScript come (forse) non lo hai mai visto
KLab 2019 Meetup - TypeScript come (forse) non lo hai mai vistoKLab 2019 Meetup - TypeScript come (forse) non lo hai mai visto
KLab 2019 Meetup - TypeScript come (forse) non lo hai mai vistoGianluca Carucci
 
Netflix presents at MassTLC Cloud Summit 2013
Netflix presents at MassTLC Cloud Summit 2013Netflix presents at MassTLC Cloud Summit 2013
Netflix presents at MassTLC Cloud Summit 2013MassTLC
 
Chaos Testing with F# and Azure by Rachel Reese at Codemotion Dubai
Chaos Testing with F# and Azure by Rachel Reese at Codemotion DubaiChaos Testing with F# and Azure by Rachel Reese at Codemotion Dubai
Chaos Testing with F# and Azure by Rachel Reese at Codemotion DubaiCodemotion Dubai
 
Working Software 2019 - TypeScript come (forse) non lo hai mai visto
Working Software 2019 - TypeScript come (forse) non lo hai mai vistoWorking Software 2019 - TypeScript come (forse) non lo hai mai visto
Working Software 2019 - TypeScript come (forse) non lo hai mai vistoGianluca Carucci
 

Similar to Client-Server Hybrid Applications with Vaadin (11)

Hybrid applications
Hybrid applicationsHybrid applications
Hybrid applications
 
Introduction to Vaadin, GWT.create 2015
Introduction to Vaadin, GWT.create 2015Introduction to Vaadin, GWT.create 2015
Introduction to Vaadin, GWT.create 2015
 
Vaadin Introduction, 7.3 edition
Vaadin Introduction, 7.3 editionVaadin Introduction, 7.3 edition
Vaadin Introduction, 7.3 edition
 
Hybrid webinar
Hybrid webinarHybrid webinar
Hybrid webinar
 
Vaadin 7.2
Vaadin 7.2Vaadin 7.2
Vaadin 7.2
 
A Day in the Life of a Cloud Network Engineer at Netflix - NET303 - re:Invent...
A Day in the Life of a Cloud Network Engineer at Netflix - NET303 - re:Invent...A Day in the Life of a Cloud Network Engineer at Netflix - NET303 - re:Invent...
A Day in the Life of a Cloud Network Engineer at Netflix - NET303 - re:Invent...
 
The A to Z of developing for the web
The A to Z of developing for the webThe A to Z of developing for the web
The A to Z of developing for the web
 
KLab 2019 Meetup - TypeScript come (forse) non lo hai mai visto
KLab 2019 Meetup - TypeScript come (forse) non lo hai mai vistoKLab 2019 Meetup - TypeScript come (forse) non lo hai mai visto
KLab 2019 Meetup - TypeScript come (forse) non lo hai mai visto
 
Netflix presents at MassTLC Cloud Summit 2013
Netflix presents at MassTLC Cloud Summit 2013Netflix presents at MassTLC Cloud Summit 2013
Netflix presents at MassTLC Cloud Summit 2013
 
Chaos Testing with F# and Azure by Rachel Reese at Codemotion Dubai
Chaos Testing with F# and Azure by Rachel Reese at Codemotion DubaiChaos Testing with F# and Azure by Rachel Reese at Codemotion Dubai
Chaos Testing with F# and Azure by Rachel Reese at Codemotion Dubai
 
Working Software 2019 - TypeScript come (forse) non lo hai mai visto
Working Software 2019 - TypeScript come (forse) non lo hai mai vistoWorking Software 2019 - TypeScript come (forse) non lo hai mai visto
Working Software 2019 - TypeScript come (forse) non lo hai mai visto
 

Recently uploaded

"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 

Recently uploaded (20)

"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 

Client-Server Hybrid Applications with Vaadin