SlideShare a Scribd company logo
1 of 26
Download to read offline
Go-ing Places
Go in the travel industry
Introduction
Paul Mooney
Host, insidethecpu.com
Architect, Ryanair Labs
Programming with Go for > 1 year
Schedule
Why
Where
How
Disclaimer
I’m not a recruiter
Why
Reasons we chose Go
But first, why not
Not another language!
Not pervasive enough
Low-yield talent pool
Speed
Inter-process communication
Dependency analysis
Reduced dependency on C
Efficient mark-and-sweep garbage collection
Beauty
Promotes idiomatic code
Structure and documentation are part-and-parcel
Parallelism is eas[y](ier)
Communicating Sequential Processes (CSP)
Parallelism
Communicating
sequential processes
Multithreading is hard
Often not worth the
overhead
Parallelism
High-level concurrency
support
Goroutines
Channels
Goroutines vs. threads
Smaller memory footprint
Disconnected from OS threading mechanism
More scalable stack
Encapsulated preemption, synchronisation
Price
Linux VMs are cheaper
than Windows
33% approx. saving per
VM
Where
Where we run Go
Payment system
50K+ daily transactions
Multiple facets of execution
Encapsulated complexity
Payment card validation
BIN-range lookup
Luhn check
Sensitive data-retrieval
External security
Internal security
Fraud-detection
Dynamic currency-conversion (DCC)
Sensitive data retrieval
Making a payment
PCI compliance
How
How Go works
Static types
Variables retain specified type
Problems identified at compile-time
Memory management
Variables live on the stack or heap
Generally favour the local call stack
Heap reserved for long-life or large objects
–You
“Just show me the damn code!”
What exactly is Go
Functional
Object Oriented
Final thoughts
Backbone of Ryanair finance
Reduced cost
Increased speed of operation
Standardised developement model
Shameless plug
Source code
https://github.com/daishisystems/fallback
https://github.com/daishisystems/month
ie.linkedin.com/in/daishisystems
@daishisystems
That’s it…

More Related Content

What's hot

What's hot (11)

Understanding Microservice Architecture WSO2Con Asia 2016
Understanding Microservice Architecture WSO2Con Asia 2016 Understanding Microservice Architecture WSO2Con Asia 2016
Understanding Microservice Architecture WSO2Con Asia 2016
 
Microservice Architecture 101
Microservice Architecture 101Microservice Architecture 101
Microservice Architecture 101
 
Microservices
MicroservicesMicroservices
Microservices
 
Microservices-101
Microservices-101Microservices-101
Microservices-101
 
APIDays 2018 - APIOps & Microservices - What is MICRO by the Way ?
APIDays 2018 - APIOps & Microservices - What is MICRO by the Way ?APIDays 2018 - APIOps & Microservices - What is MICRO by the Way ?
APIDays 2018 - APIOps & Microservices - What is MICRO by the Way ?
 
Estructura Cliente
Estructura ClienteEstructura Cliente
Estructura Cliente
 
Kong
KongKong
Kong
 
Securing elastic applications_on_mobile_devices
Securing elastic applications_on_mobile_devicesSecuring elastic applications_on_mobile_devices
Securing elastic applications_on_mobile_devices
 
Microservice architecture design principles
Microservice architecture design principlesMicroservice architecture design principles
Microservice architecture design principles
 
07 advanced topics
07 advanced topics07 advanced topics
07 advanced topics
 
Stephy
StephyStephy
Stephy
 

Viewers also liked

Liftsure Industrial Parts Company Profile
Liftsure Industrial Parts Company ProfileLiftsure Industrial Parts Company Profile
Liftsure Industrial Parts Company Profile
Megan Stander
 
What is population geography and why study it
What is population geography and why study itWhat is population geography and why study it
What is population geography and why study it
Tom McLean
 

Viewers also liked (17)

Presentación.
Presentación.Presentación.
Presentación.
 
Social media marketing
Social media marketingSocial media marketing
Social media marketing
 
BOUDY -SALM A FINAL
BOUDY -SALM A FINAL  BOUDY -SALM A FINAL
BOUDY -SALM A FINAL
 
2016 kingly towels
2016 kingly towels2016 kingly towels
2016 kingly towels
 
Taxi vinasun 2015 unique
Taxi vinasun 2015   uniqueTaxi vinasun 2015   unique
Taxi vinasun 2015 unique
 
Boulder Ballot initiative 300 Neighborhoods’ Right to Vote
Boulder Ballot initiative 300 Neighborhoods’ Right to VoteBoulder Ballot initiative 300 Neighborhoods’ Right to Vote
Boulder Ballot initiative 300 Neighborhoods’ Right to Vote
 
Healthy Cooking with Chef Oliver
Healthy Cooking with Chef OliverHealthy Cooking with Chef Oliver
Healthy Cooking with Chef Oliver
 
Fear the French
Fear the FrenchFear the French
Fear the French
 
Медиааналитика
МедиааналитикаМедиааналитика
Медиааналитика
 
"Работа с негативом в СМИ и соцсетях"
"Работа с негативом в СМИ и соцсетях""Работа с негативом в СМИ и соцсетях"
"Работа с негативом в СМИ и соцсетях"
 
Presentació miró p4
Presentació miró p4Presentació miró p4
Presentació miró p4
 
Prof. Eddie Mwenje - TEACHER TRAINING IN STEM EDUCATION IN AFRICA: Opportuni...
 Prof. Eddie Mwenje - TEACHER TRAINING IN STEM EDUCATION IN AFRICA: Opportuni... Prof. Eddie Mwenje - TEACHER TRAINING IN STEM EDUCATION IN AFRICA: Opportuni...
Prof. Eddie Mwenje - TEACHER TRAINING IN STEM EDUCATION IN AFRICA: Opportuni...
 
Video in the digital marketing
Video in the digital marketingVideo in the digital marketing
Video in the digital marketing
 
Liftsure Industrial Parts Company Profile
Liftsure Industrial Parts Company ProfileLiftsure Industrial Parts Company Profile
Liftsure Industrial Parts Company Profile
 
What is population geography and why study it
What is population geography and why study itWhat is population geography and why study it
What is population geography and why study it
 
National population policy
National population policyNational population policy
National population policy
 
Digital case studies white paper 2016
Digital case studies white paper 2016Digital case studies white paper 2016
Digital case studies white paper 2016
 

Similar to Going places

Easy Jet Case Study - Mis
Easy Jet Case Study   -  MisEasy Jet Case Study   -  Mis
Easy Jet Case Study - Mis
BERHMANI Samuel
 
RailswayCon 2010 - Command Your Domain
RailswayCon 2010 - Command Your DomainRailswayCon 2010 - Command Your Domain
RailswayCon 2010 - Command Your Domain
Lourens Naudé
 
Business Rules and Business Processes - How good partners are they?
Business Rules and Business Processes - How good partners are they?Business Rules and Business Processes - How good partners are they?
Business Rules and Business Processes - How good partners are they?
Dragan Gasevic
 

Similar to Going places (20)

Going places
Going placesGoing places
Going places
 
Aws e commerce&retail-day_ldcc_jkh_v4.0
Aws e commerce&retail-day_ldcc_jkh_v4.0Aws e commerce&retail-day_ldcc_jkh_v4.0
Aws e commerce&retail-day_ldcc_jkh_v4.0
 
Apidays Paris 2023 - API Security Challenges for Cloud-native Software Archit...
Apidays Paris 2023 - API Security Challenges for Cloud-native Software Archit...Apidays Paris 2023 - API Security Challenges for Cloud-native Software Archit...
Apidays Paris 2023 - API Security Challenges for Cloud-native Software Archit...
 
Languages formanandmachine
Languages formanandmachineLanguages formanandmachine
Languages formanandmachine
 
Supply Chain Management: India vis-à-vis Global Perspective pt 1
Supply Chain Management:  India vis-à-vis Global Perspective pt 1Supply Chain Management:  India vis-à-vis Global Perspective pt 1
Supply Chain Management: India vis-à-vis Global Perspective pt 1
 
Realtime search at Yammer
Realtime search at YammerRealtime search at Yammer
Realtime search at Yammer
 
Real-time Search at Yammer - By Aleksandrovsky Boris
Real-time Search at Yammer - By Aleksandrovsky BorisReal-time Search at Yammer - By Aleksandrovsky Boris
Real-time Search at Yammer - By Aleksandrovsky Boris
 
Real Time Search at Yammer
Real Time Search at YammerReal Time Search at Yammer
Real Time Search at Yammer
 
AWS re:Invent 2016: Building a Solid Business Case for Cloud Migration (ENT308)
AWS re:Invent 2016: Building a Solid Business Case for Cloud Migration (ENT308)AWS re:Invent 2016: Building a Solid Business Case for Cloud Migration (ENT308)
AWS re:Invent 2016: Building a Solid Business Case for Cloud Migration (ENT308)
 
IMPACT Final Conference - Asaf Tzadok
IMPACT Final Conference - Asaf TzadokIMPACT Final Conference - Asaf Tzadok
IMPACT Final Conference - Asaf Tzadok
 
POINTSmanagement Company Overview
POINTSmanagement Company OverviewPOINTSmanagement Company Overview
POINTSmanagement Company Overview
 
Easy Jet Case Study - Mis
Easy Jet Case Study   -  MisEasy Jet Case Study   -  Mis
Easy Jet Case Study - Mis
 
Web Development Within your Means
Web Development Within your MeansWeb Development Within your Means
Web Development Within your Means
 
Why DevOps != the Wild West and How Embracing it Can Improve Security - RSA C...
Why DevOps != the Wild West and How Embracing it Can Improve Security - RSA C...Why DevOps != the Wild West and How Embracing it Can Improve Security - RSA C...
Why DevOps != the Wild West and How Embracing it Can Improve Security - RSA C...
 
Presentation Nils Decker of SpamExperts @ WHD.local Cologne 2011
Presentation Nils Decker of SpamExperts @ WHD.local Cologne 2011Presentation Nils Decker of SpamExperts @ WHD.local Cologne 2011
Presentation Nils Decker of SpamExperts @ WHD.local Cologne 2011
 
Mashups and Business Process Management in SOA
Mashups and Business Process Management in SOAMashups and Business Process Management in SOA
Mashups and Business Process Management in SOA
 
RailswayCon 2010 - Command Your Domain
RailswayCon 2010 - Command Your DomainRailswayCon 2010 - Command Your Domain
RailswayCon 2010 - Command Your Domain
 
Designing For Multiple Outputs
Designing For Multiple OutputsDesigning For Multiple Outputs
Designing For Multiple Outputs
 
How to build an automated customer data onboarding pipeline
How to build an automated customer data onboarding pipelineHow to build an automated customer data onboarding pipeline
How to build an automated customer data onboarding pipeline
 
Business Rules and Business Processes - How good partners are they?
Business Rules and Business Processes - How good partners are they?Business Rules and Business Processes - How good partners are they?
Business Rules and Business Processes - How good partners are they?
 

Recently uploaded

TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
shinachiaurasa2
 

Recently uploaded (20)

TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
SHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationSHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions Presentation
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
Generic or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisionsGeneric or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisions
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 

Going places