SlideShare une entreprise Scribd logo
1  sur  83
@
$story->player()
Friday, 3 May 13
@
Bring Your Stories To Life
Through Your Tests
Friday, 3 May 13
@Introduce Yourselves
Friday, 3 May 13
@
@stuherbert
Friday, 3 May 13
@
Testing
I’m here to talk about
Friday, 3 May 13
@Don’t Switch Off Just Yet!
Friday, 3 May 13
@
Storyplayer
I’m here to launch
Friday, 3 May 13
@
Storyplayer
is a new open-source testing tool
Friday, 3 May 13
@
Created by
Friday, 3 May 13
@
built in
Friday, 3 May 13
@
hosted on
Friday, 3 May 13
@
to test this:
We’ve built it
Friday, 3 May 13
@DataSift Technical Architecture
Ultrahose
Archiver
push
Pickle
Node
Pickle
Node
Pickle
Node
Pickle
Node
Pickle
Node
Pickle
Node
Node Shard
push
Pickle
Node
Pickle
Node
Pickle
Node
Pickle
Node
Pickle
Node
Pickle
Node
Node Shard
ACL
(with interaction
counter)
HttpStreaming,PuSH,Search
Stream
Recorder
Monitoring
Aggregator
EDRs
(licensed
content
metrics)
Control
Channels
(D5)Hardware
LoadBalancer
Ultrahose
Archiver
100%
Prism
100%
Pickle
Filtering
Engine
Twitter
Facebook
Wikipedia
Reddit
LexisNexis
Meltwater
Estimize
Digg
@lorenzoalberton
DataSift Architecture 2.2
Links Resolution
+ OpenGraph
+ Twitter Cards
+ Metadata
Deletes
Processor
Redis
Input Streams
NewsCred
BoardReader
MySpace
SuperFeeder
Augmentation Pipeline
push
Pickle
Node
Pickle
Node
Pickle
Node
Pickle
Node
Pickle
Node
Pickle
Node
Node Shard
push
Pickle
Node
Pickle
Node
Pickle
Node
Pickle
Node
Pickle
Node
Pickle
Node
Node Shard
Monitoring
Kafka
Queue
Events
Storage
ACL
(with interaction
counter)
tracker
Limit
Manager
Authentication
Manager
Notification
Service
WEB
API
Stream .
Manager .DB
Definition .
Manager .DB
CSDL Compiler,
Validator,
Normaliser
Historics
Scheduler
Recording
Scheduler
Push
Scheduler
Interaction
Targets
Mapping
Filtering
Tardis
Pickle
Interaction
Targets
Mapping
Filtering
Tardis
Pickle
...
...
Hadoop
Titan Historics
Map/Reduce
HBase Cluster
Region 1 Region 2 Region N...
...
Data Node Data Node Data Node Data Node Data Node
100%
100%
Stop
PUB
License
Manager DB
Billing
Pipeline DB
DB
DB
Mask
Manager
DB
Connection
Manager
Time Machine + Insights
Post-Processing, Stream Analytics
jobs
DB
chunks
DB
chunk
selector
job
tracker
WorkerSnapshotter
Buffered
Streams
Redis
Worker
Worker
NodeMeteor
Real-time
Streams
Node
Node
HTTP Request
GET batch
PUSH
Scheduler
subscription X
subscription Y
job queuePUSH
Producer
Subscriptions
DB
PUSH
Delivery
HTTP(S) POST
(S)FTP
Amazon S3
DynamoDB
Microsoft Azure
MongoDB
Exports and
Analytics
WebSockets
HTTPStreaming
Delivery Subscriptions
Connections
Storage
kafka-consumer
Oracle
Stream
results
CouchDB
PickleDB .DB
Audit
Kafka
Kafka
Historical Queries
@datasift
Goblin Head
Goblin Head
Goblin Head
Goblin Tail
Goblin Tail
Goblin Tail
Interaction
Generation
Interaction
Generation
3rd party APIs
Demographics
Trends
Analysis
Sentiment
Analysis
Named
Entities
Topics
Analysis
Language
Detection
Klout
Score + Profile
Ogre
OgreOgreOgreOgre
Ogre
Ogre
OgreOgreOgreOgre
Ogre
Ogre
Ogre
Ogre
Ogre
OgreOgreOgreOgre
Ogre
Ogre
OgreOgreOgreOgre
Ogre
Ogre
OgreOgreOgreOgre
Ogre
Ogre
OgreOgreOgreOgre
Ogre
IBM Cognos
HDFS
Archiver
Data ingestion + Augmentation
Bit.ly
Stream
Splitter/Joiner
Deduper
Msg splitter
Google BigQuery
Stream results
Cloud Storage
DBs
BI tools
Friday, 3 May 13
@
It Plugs A Gap
In our testing strategy
Friday, 3 May 13
@
Testing Strategy?
What is our
Friday, 3 May 13
@
Layered Approach
Catch different problems
using different tools
Friday, 3 May 13
@Common Test Approach
Unit
Tests
Acceptance
Tests
Integration
Tests
Friday, 3 May 13
@The Focus Of Each Layer
Functions
& Methods
User Interfaces
& APIs
Services
& Systems
Friday, 3 May 13
@The De Facto Standard
Functions
& Methods
User Interfaces
& APIs
Services
& Systems
PHPUnit
Friday, 3 May 13
@Popular Choices
Functions
& Methods
User Interfaces
& APIs
Services
& Systems
PHPUnit
BehatPHPSpec
Friday, 3 May 13
@The Neglected Layer
Functions
& Methods
User Interfaces
& APIs
Services
& Systems
PHPUnit
BehatPHPSpec
?
Friday, 3 May 13
@
Services & Systems?
How do we test
Friday, 3 May 13
@A Gap To Plug
Functions
& Methods
User Interfaces
& APIs
Services
& Systems
PHPUnit
BehatPHPSpec
Friday, 3 May 13
@Where Storyplayer Fits In
Functions
& Methods
User Interfaces
& APIs
Services
& Systems
PHPUnit
BehatPHPSpec
Storyplayer
Friday, 3 May 13
@
A Quick Tour
of Storyplayer
Friday, 3 May 13
@
Stories
It’s all about
Friday, 3 May 13
@
User Stories
The things that your
end-users can (and can’t!) do
Friday, 3 May 13
@
Service Stories
The things that your
internal systems can do
Friday, 3 May 13
@
Prose
Friday, 3 May 13
@
$story =
newStoryFor();
Friday, 3 May 13
@
Simple PHP Scripts
We don’t define a new class
for every story we want to test
Friday, 3 May 13
@
Avoids the
class AVeryLongAndInventiveClassname
* 1000 problem!
Friday, 3 May 13
@
Stories have up to
8 Phases
Friday, 3 May 13
@Creating The Test Conditions
Test Environment Setup1
Test Setup2
Friday, 3 May 13
@Before We Test
Pre-Test Prediction3
Pre-Test Inspection4
Friday, 3 May 13
@Perform The Story Steps
Action5
Friday, 3 May 13
@Did Anything Happen?
Post-Test Inspection6
Friday, 3 May 13
@Clean Up Afterwards
Test Teardown7
Test Environment Teardown8
Friday, 3 May 13
@
Closure
Each phase is a
Friday, 3 May 13
@
$story->setTestEnvironmentSetup(function($st) {
// story steps go here
});
Friday, 3 May 13
@
the $st object
All actions are done using
Friday, 3 May 13
@
The $st object
is a dynamic module loader
Friday, 3 May 13
@
Brand new objects
are instantiated
every new action
Friday, 3 May 13
@
This approach ensures
no weird bugs in tests
caused by re-using
objects between actions
Friday, 3 May 13
@
3 kinds of action
There are
Friday, 3 May 13
@
$st->fromXXXX()
Get the state of something
Friday, 3 May 13
@
$st->expectsXXXX()
Test the state of something
Friday, 3 May 13
@
$st->usingXXXX()
Change the state of something
Friday, 3 May 13
@
$story->addAction(function($st) {
$st->usingBrowser()->gotoPage(...);
$st->usingBrowser()->waitForTitle(...);
....
});
Friday, 3 May 13
@
$story->setPostTestInspection(function($st) {
$st->usingBrowser()->gotoPage(...);
$st->usingBrowser()->waitForTitle(...);
$st->expectsBrowser()
->has()
->linkWithText(“My Account”);
});
Friday, 3 May 13
@
14 Modules
Included
Friday, 3 May 13
@
Vagrant
Create test environments using
Friday, 3 May 13
@Using The Vagrant Module
SP
Vagrant VM
V
Vagrant VM
Creates
Friday, 3 May 13
@Using The Vagrant Module
Vagrant VM
VSP Service
Vagrant VM
Deploys
Friday, 3 May 13
@Using The Vagrant Module
Vagrant VM
VSP Service
Vagrant VM
Tests
SP
Friday, 3 May 13
@Using The Vagrant Module
Vagrant VM
VSP Service
Vagrant VM
Destroys
Friday, 3 May 13
@
SavageD
Monitor your VMs and processes using
(Another DataSift tool we’re releasing tonight)
Friday, 3 May 13
@Using SavageD
Vagrant VM
VSP
Vagrant VM
Creates
Friday, 3 May 13
@Using SavageD
Vagrant VM
VSP Service
Vagrant VM
Deploys
SavageD
Friday, 3 May 13
@Using SavageD
Vagrant VM
VSP Service
Vagrant VM
Tests
SP SavageD
Friday, 3 May 13
@Using SavageD
Vagrant VM
VSP Service
Vagrant VM
Tests
SP SavageD
Monitors
Friday, 3 May 13
@Using SavageD
Vagrant VM
VSP
Metrics Server
Service
Vagrant VM
Tests
SP
Monitors
statsdGraphite
SavageD
Reports To
Friday, 3 May 13
@
Graphite
Test your non-functional requirements with
Friday, 3 May 13
@Combined Testing Solution
Vagrant VM
VSP
Metrics Server
Service
Vagrant VM
Tests
SP
Monitors
statsdGraphite
SavageD
Reports To
Tests Metrics
Friday, 3 May 13
@Everything Should Log Metrics
Vagrant VM
VSP
Metrics Server
Vagrant VM
Tests
SP
Monitors
statsdGraphite
SavageD
Reports To
Tests Metrics
Service
Friday, 3 May 13
@
Your Own Modules
Extend Storyplayer with
Friday, 3 May 13
@
Pull Requests
Welcome :)
Friday, 3 May 13
@
OS X and Linux
Runs on
Friday, 3 May 13
@
PEAR
Installed via
Friday, 3 May 13
@
(Composer doesn’t support
installing packages system-wide yet)
Friday, 3 May 13
@
datasift.github.io
Docs available from
(WIP!!)
Friday, 3 May 13
@
Before You Go ...
Friday, 3 May 13
@This Model Is Incomplete
Functions
& Methods
User Interfaces
& APIs
Services
& Systems
PHPUnit
BehatPHPSpec
Storyplayer
Friday, 3 May 13
@... getting better :) ...
Functions
& Methods
User Interfaces
& APIs
Services
& Systems
PHPUnit
Storyplayer+
Friday, 3 May 13
@
Storyplayer
can test websites
and APIs too!
Friday, 3 May 13
@
Storyplayer
doesn’t replace Behat et al
Friday, 3 May 13
@
Behat
moves back to doing
what it does best
Friday, 3 May 13
@A Better Model Of Layered Testing
Functions
& Methods
User Interfaces
& APIs
Services
& Systems
PHPUnit
Storyplayer+
Acceptance
BehatPHPSpec
+
Friday, 3 May 13
@
Developers
take responsibility
for unit testing
Friday, 3 May 13
@
Developers + Testers
share responsibility
for testing
services & systems
user interfaces & APIs
Friday, 3 May 13
@
Product Owners
take responsibility
for acceptance testing
Friday, 3 May 13
@
Storyplayer
https://github.com/datasift/storyplayer/
available now!
Friday, 3 May 13
@
Thank you
PS: We’re hiring :-)
Friday, 3 May 13

Contenu connexe

Similaire à Storyplayer

Become Master of Your Own Universe - DIBI 2013
Become Master of Your Own Universe - DIBI 2013Become Master of Your Own Universe - DIBI 2013
Become Master of Your Own Universe - DIBI 2013Phil Sturgeon
 
Ab(Using) the MetaCPAN API for Fun and Profit v2013
Ab(Using) the MetaCPAN API for Fun and Profit v2013Ab(Using) the MetaCPAN API for Fun and Profit v2013
Ab(Using) the MetaCPAN API for Fun and Profit v2013Olaf Alders
 
Simplified security code review - BSidesQuebec2013
Simplified security code review - BSidesQuebec2013Simplified security code review - BSidesQuebec2013
Simplified security code review - BSidesQuebec2013BSidesQuebec2013
 
Building scalable applications while scaling your infrastructure by rhommel l...
Building scalable applications while scaling your infrastructure by rhommel l...Building scalable applications while scaling your infrastructure by rhommel l...
Building scalable applications while scaling your infrastructure by rhommel l...NETWAYS
 
Building scalable applications while scaling your infrastructure by rhommel l...
Building scalable applications while scaling your infrastructure by rhommel l...Building scalable applications while scaling your infrastructure by rhommel l...
Building scalable applications while scaling your infrastructure by rhommel l...Puppet
 
Applying Evolutionary Architecture on a Popular API
Applying Evolutionary Architecture on a  Popular APIApplying Evolutionary Architecture on a  Popular API
Applying Evolutionary Architecture on a Popular APIPhil Calçado
 
Simplified Security Code Review Process
Simplified Security Code Review ProcessSimplified Security Code Review Process
Simplified Security Code Review ProcessSherif Koussa
 
新しい IE と JavaScriptで動く 最近のWebアプリケーション
新しい IE と JavaScriptで動く 最近のWebアプリケーション新しい IE と JavaScriptで動く 最近のWebアプリケーション
新しい IE と JavaScriptで動く 最近のWebアプリケーションyomotsu
 
Testing Drupal with Ghosts and Gherkin
Testing Drupal  with Ghosts and GherkinTesting Drupal  with Ghosts and Gherkin
Testing Drupal with Ghosts and GherkinPhase2
 
Keeping it small - Getting to know the Slim PHP micro framework
Keeping it small - Getting to know the Slim PHP micro frameworkKeeping it small - Getting to know the Slim PHP micro framework
Keeping it small - Getting to know the Slim PHP micro frameworkJeremy Kendall
 
Matt training-html-halfday
Matt training-html-halfdayMatt training-html-halfday
Matt training-html-halfdayMatthew Dobson
 
What Is This Continuous Delivery Thing Anyway? - PuppetConf 2013
What Is This Continuous Delivery Thing Anyway? - PuppetConf 2013What Is This Continuous Delivery Thing Anyway? - PuppetConf 2013
What Is This Continuous Delivery Thing Anyway? - PuppetConf 2013Puppet
 
Lost in o auth? learn velruse and get your life back
Lost in o auth? learn velruse and get your life backLost in o auth? learn velruse and get your life back
Lost in o auth? learn velruse and get your life backAndrew Mleczko
 
Apache TomEE, Java EE 6 Web Profile on Tomcat - David Blevins
Apache TomEE, Java EE 6 Web Profile on Tomcat - David BlevinsApache TomEE, Java EE 6 Web Profile on Tomcat - David Blevins
Apache TomEE, Java EE 6 Web Profile on Tomcat - David Blevinsjaxconf
 
Workers of the web - BrazilJS 2013
Workers of the web - BrazilJS 2013Workers of the web - BrazilJS 2013
Workers of the web - BrazilJS 2013Thibault Imbert
 
Taming Pythons with ZooKeeper
Taming Pythons with ZooKeeperTaming Pythons with ZooKeeper
Taming Pythons with ZooKeeperJyrki Pulliainen
 
Fault Tolerance 101
Fault Tolerance 101 Fault Tolerance 101
Fault Tolerance 101 C4Media
 
Deprecating ActiveRecord Attributes without making Zombies
Deprecating ActiveRecord Attributes without making ZombiesDeprecating ActiveRecord Attributes without making Zombies
Deprecating ActiveRecord Attributes without making Zombiesyann ARMAND
 
Writing SaltStack Modules - OpenWest 2013
Writing SaltStack Modules - OpenWest 2013Writing SaltStack Modules - OpenWest 2013
Writing SaltStack Modules - OpenWest 2013SaltStack
 
LOPSA East 2013 - Building a More Effective Monitoring Environment
LOPSA East 2013 - Building a More Effective Monitoring EnvironmentLOPSA East 2013 - Building a More Effective Monitoring Environment
LOPSA East 2013 - Building a More Effective Monitoring EnvironmentMike Julian
 

Similaire à Storyplayer (20)

Become Master of Your Own Universe - DIBI 2013
Become Master of Your Own Universe - DIBI 2013Become Master of Your Own Universe - DIBI 2013
Become Master of Your Own Universe - DIBI 2013
 
Ab(Using) the MetaCPAN API for Fun and Profit v2013
Ab(Using) the MetaCPAN API for Fun and Profit v2013Ab(Using) the MetaCPAN API for Fun and Profit v2013
Ab(Using) the MetaCPAN API for Fun and Profit v2013
 
Simplified security code review - BSidesQuebec2013
Simplified security code review - BSidesQuebec2013Simplified security code review - BSidesQuebec2013
Simplified security code review - BSidesQuebec2013
 
Building scalable applications while scaling your infrastructure by rhommel l...
Building scalable applications while scaling your infrastructure by rhommel l...Building scalable applications while scaling your infrastructure by rhommel l...
Building scalable applications while scaling your infrastructure by rhommel l...
 
Building scalable applications while scaling your infrastructure by rhommel l...
Building scalable applications while scaling your infrastructure by rhommel l...Building scalable applications while scaling your infrastructure by rhommel l...
Building scalable applications while scaling your infrastructure by rhommel l...
 
Applying Evolutionary Architecture on a Popular API
Applying Evolutionary Architecture on a  Popular APIApplying Evolutionary Architecture on a  Popular API
Applying Evolutionary Architecture on a Popular API
 
Simplified Security Code Review Process
Simplified Security Code Review ProcessSimplified Security Code Review Process
Simplified Security Code Review Process
 
新しい IE と JavaScriptで動く 最近のWebアプリケーション
新しい IE と JavaScriptで動く 最近のWebアプリケーション新しい IE と JavaScriptで動く 最近のWebアプリケーション
新しい IE と JavaScriptで動く 最近のWebアプリケーション
 
Testing Drupal with Ghosts and Gherkin
Testing Drupal  with Ghosts and GherkinTesting Drupal  with Ghosts and Gherkin
Testing Drupal with Ghosts and Gherkin
 
Keeping it small - Getting to know the Slim PHP micro framework
Keeping it small - Getting to know the Slim PHP micro frameworkKeeping it small - Getting to know the Slim PHP micro framework
Keeping it small - Getting to know the Slim PHP micro framework
 
Matt training-html-halfday
Matt training-html-halfdayMatt training-html-halfday
Matt training-html-halfday
 
What Is This Continuous Delivery Thing Anyway? - PuppetConf 2013
What Is This Continuous Delivery Thing Anyway? - PuppetConf 2013What Is This Continuous Delivery Thing Anyway? - PuppetConf 2013
What Is This Continuous Delivery Thing Anyway? - PuppetConf 2013
 
Lost in o auth? learn velruse and get your life back
Lost in o auth? learn velruse and get your life backLost in o auth? learn velruse and get your life back
Lost in o auth? learn velruse and get your life back
 
Apache TomEE, Java EE 6 Web Profile on Tomcat - David Blevins
Apache TomEE, Java EE 6 Web Profile on Tomcat - David BlevinsApache TomEE, Java EE 6 Web Profile on Tomcat - David Blevins
Apache TomEE, Java EE 6 Web Profile on Tomcat - David Blevins
 
Workers of the web - BrazilJS 2013
Workers of the web - BrazilJS 2013Workers of the web - BrazilJS 2013
Workers of the web - BrazilJS 2013
 
Taming Pythons with ZooKeeper
Taming Pythons with ZooKeeperTaming Pythons with ZooKeeper
Taming Pythons with ZooKeeper
 
Fault Tolerance 101
Fault Tolerance 101 Fault Tolerance 101
Fault Tolerance 101
 
Deprecating ActiveRecord Attributes without making Zombies
Deprecating ActiveRecord Attributes without making ZombiesDeprecating ActiveRecord Attributes without making Zombies
Deprecating ActiveRecord Attributes without making Zombies
 
Writing SaltStack Modules - OpenWest 2013
Writing SaltStack Modules - OpenWest 2013Writing SaltStack Modules - OpenWest 2013
Writing SaltStack Modules - OpenWest 2013
 
LOPSA East 2013 - Building a More Effective Monitoring Environment
LOPSA East 2013 - Building a More Effective Monitoring EnvironmentLOPSA East 2013 - Building a More Effective Monitoring Environment
LOPSA East 2013 - Building a More Effective Monitoring Environment
 

Dernier

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 

Dernier (20)

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 

Storyplayer