SlideShare a Scribd company logo
Welcome to the SGCI Webinar!
• We will be starting shortly.
• Your audio has been muted, and you are
encouraged to turn off your video during the
presentation.
• Controls for these are near the bottom of
the right-side control panel for BlueJeans.
• You may submit questions at any time
using Chat, and the moderator will share
them with the presenter when appropriate.
• This presentation will be recorded and slides will be
posted.
1
Creating a developer pipeline by
teaching gateway technologies
Marlon Pierce, Suresh Marru
Science Gateways Research Center, Indiana University
marpierc@iu.edu, smarru@iu.edu
http://sgrc.iu.edu
The Pipeline Problem
Finding and retaining people to work on science
gateways is tough.
If only there was an untapped reservoir of talent close by....
The Pipeline Solution
Recruit students to work with us by teaching a graduate level
class on the underpinnings of gateways.
Embrace change.
What Is a Science Gateway?
A Science Gateway is a user-centric environment
for conducting online computational science
(Not actual IU students)
What if Mark Zuckerberg Read More
Chemistry and Biology Books?
Goal 1: Apply basic distributed
computing concepts to Science
Gateways.
Goal 2: Apply new architectures,
methodologies, and technologies to
Science Gateways: Microservices, DevOps
Browser
Web Interface Server
Application Server
Server SDK
Client SDK
IU: Big Red 2
Resource Plugins
XSEDE:
Stampede
XSEDE: Comet Juelich: Jureca
HTTPS
HTTP or TCP/IP
Facebook
doesn’t look
like this, so
why should
science
gateways?
Goal 3: Teach open source software
practices
Challenges for Science Gateways
• Providing a rich user experience
• Defining an API for the application server
• Defining the right microservices.
• Implementing the components, wiring them together correctly.
• Supporting multiple gateway tenants
• Fault tolerance for components
• State management
• Continuous delivery
• Security management
• Supporting full scientific exploratory cycle
What Do We Teach?
A quick survey of course material
Micro-
Services
DevOps
Distributed
Systems
Putting It All Together: Gateways and
Microservices
Virtualization, Containers, Docker
API and Metadata Model Design
Messaging Systems: RabbitMQ, Apache Kafka
Resource Management and Scheduling: Mesos,
Aurora, and Torque
Distributed State Management: Zookeeper,
Consul
Security: OAuth2 and OpenIDConnect
Putting It All In
Place:
Continuous
Integration and
Deployment
Mission Accomplished!
Students learned on
their own.
More Information and Next Steps
• http://courses.airavata.org
• Additional material in Canvas
• Details on assignments
• We are interested in taking this to a broader audience
Thank you for participating!
• Please offer your feedback with our 30-second evaluation:
http://sciencegateways.org/webinareval
• Join us next month (March 8) for
Building a Modern Research Data Portal with Globus –
Introduction to the Globus Platform
36
Science!
Spring 2016 Course Overview
• Students organized into teams of 3-4
• 8 biweekly project milestones, each depended on the previous
assignment.
• Basic sequence, Part 1:
• Learn to submit jobs on IU’s Karst Cluster, MOAB scheduler
• Develop core job management application
• Design an API
• Design a Web front end
• Capture job execution metadata
• All code must be in GitHub, must build cleanly on the grader’s laptop
Spring 2016 Project Milestones, Part 2
• Integrate with a continuous integration and deployment system
• Travis-CI and Amazon Code-Deploy
• Apache Jenkins on Jetstream
• Break up your monolithic Web applications into microservices
• Combine with CI/CD
Spring 2016: What Worked, What Didn’t?
• Small class, we got to know the
students pretty well.
• Students managed to build basic
functioning gateways that used
CI/CD automatically linked to
GitHub accounts.
• Students got bogged down in job
submission issues.
• Students had trouble breaking
up their monolithic Web
applications into microservices.
Fall 2016: Begin at the End
• For Fall 2016, we reverse the order.
• Students learned CI/CD and microservices in the first assignments.
• We moved aggressively to problems of load balancing, fault tolerance,
and containerization of services.
• We de-emphasized job submission to traditional clusters
• Used Apache Mesos and Apache Aurora for this.
Fall 2016: What Worked, What Didn’t
• All the students were able to
keep up with the assignments.
• Many were using technologies for
the first time.
• Some surprises
• Some teams took it as a challenge
to use different approaches.
• Didn’t have the chance to get to
know students as well as before.
• Larger class, graders
• Monthly assignments were too
large.
• Biweekly worked better.
Spring 2017: Advanced Topics
• In the Spring 2016 and Fall 2016 courses, we knew the answers
(mostly).
• Now in Spring 2017 course, we tackle problems we don’t know the
answers to.
• Or, if you prefer, for a given problem,
• Introductory Class: Find an answer that works
• Advanced Class: Find the best answer
• How do you do that?

More Related Content

Viewers also liked

Viewers also liked (13)

Marco Teórico
Marco Teórico Marco Teórico
Marco Teórico
 
Petting zoo.docx
Petting zoo.docxPetting zoo.docx
Petting zoo.docx
 
Networking: Construye y Trabaja tu red de Contactos
Networking: Construye y Trabaja tu red de ContactosNetworking: Construye y Trabaja tu red de Contactos
Networking: Construye y Trabaja tu red de Contactos
 
Administracion de empresas 1.1
Administracion de empresas 1.1Administracion de empresas 1.1
Administracion de empresas 1.1
 
Organización
OrganizaciónOrganización
Organización
 
GRFU Development Plan
GRFU Development PlanGRFU Development Plan
GRFU Development Plan
 
Eity
EityEity
Eity
 
Shield of Faith
Shield of FaithShield of Faith
Shield of Faith
 
Enhancing the B2B Buying Experience with Personalization – Certona
Enhancing the B2B Buying Experience with Personalization – CertonaEnhancing the B2B Buying Experience with Personalization – Certona
Enhancing the B2B Buying Experience with Personalization – Certona
 
Poder ciudadano
Poder ciudadanoPoder ciudadano
Poder ciudadano
 
Sesion 13 curso hechos
Sesion 13 curso hechosSesion 13 curso hechos
Sesion 13 curso hechos
 
How should I react to problems in my aquaponics system?
How should I react to problems in my aquaponics system?How should I react to problems in my aquaponics system?
How should I react to problems in my aquaponics system?
 
Strategi perlaksanaan SPAk di politeknik
Strategi perlaksanaan SPAk di politeknikStrategi perlaksanaan SPAk di politeknik
Strategi perlaksanaan SPAk di politeknik
 

Similar to Creating a developer pipeline by teaching gateway technologies

Apache Student Induction ApacheCon 2013
Apache Student Induction ApacheCon 2013Apache Student Induction ApacheCon 2013
Apache Student Induction ApacheCon 2013
smarru
 
Final presentation SACES 2014
Final presentation SACES 2014Final presentation SACES 2014
Final presentation SACES 2014
cmholmes1
 

Similar to Creating a developer pipeline by teaching gateway technologies (20)

Thinking Outside the Textbook: Using OER grants to fund faculty innovation in...
Thinking Outside the Textbook: Using OER grants to fund faculty innovation in...Thinking Outside the Textbook: Using OER grants to fund faculty innovation in...
Thinking Outside the Textbook: Using OER grants to fund faculty innovation in...
 
E learning ns mani
E learning ns maniE learning ns mani
E learning ns mani
 
SGCI at Earth Science Information Partners meeting
SGCI at Earth Science Information Partners meetingSGCI at Earth Science Information Partners meeting
SGCI at Earth Science Information Partners meeting
 
Jupyter: A Gateway for Scientific Collaboration and Education
Jupyter: A Gateway for Scientific Collaboration and EducationJupyter: A Gateway for Scientific Collaboration and Education
Jupyter: A Gateway for Scientific Collaboration and Education
 
Jisc e assess-mar_12
Jisc e assess-mar_12Jisc e assess-mar_12
Jisc e assess-mar_12
 
Digital toolbox for 21st Century Learning
Digital toolbox for 21st Century LearningDigital toolbox for 21st Century Learning
Digital toolbox for 21st Century Learning
 
AWS Educate: Accelerating Cybersecurity and Cloud Workforce Preparation with AWS
AWS Educate: Accelerating Cybersecurity and Cloud Workforce Preparation with AWSAWS Educate: Accelerating Cybersecurity and Cloud Workforce Preparation with AWS
AWS Educate: Accelerating Cybersecurity and Cloud Workforce Preparation with AWS
 
Apache Student Induction ApacheCon 2013
Apache Student Induction ApacheCon 2013Apache Student Induction ApacheCon 2013
Apache Student Induction ApacheCon 2013
 
Eurodidaweb2012 03-13
Eurodidaweb2012 03-13Eurodidaweb2012 03-13
Eurodidaweb2012 03-13
 
Sgci nasa-esds-10-29-18
Sgci nasa-esds-10-29-18Sgci nasa-esds-10-29-18
Sgci nasa-esds-10-29-18
 
Bb on Tour 2016 | Innovation and Your Institution (Part 1) | Panel Session
Bb on Tour 2016 | Innovation and Your Institution (Part 1) | Panel SessionBb on Tour 2016 | Innovation and Your Institution (Part 1) | Panel Session
Bb on Tour 2016 | Innovation and Your Institution (Part 1) | Panel Session
 
Comphumanities 1
Comphumanities 1Comphumanities 1
Comphumanities 1
 
Purdue unal iron hacks 2018 spring - award ceremony
Purdue unal iron hacks 2018 spring - award ceremonyPurdue unal iron hacks 2018 spring - award ceremony
Purdue unal iron hacks 2018 spring - award ceremony
 
Devops syllabus
Devops syllabusDevops syllabus
Devops syllabus
 
Eurodidaweb2012 03-13
Eurodidaweb2012 03-13Eurodidaweb2012 03-13
Eurodidaweb2012 03-13
 
Feeding and Captivating OU Students
Feeding and Captivating OU StudentsFeeding and Captivating OU Students
Feeding and Captivating OU Students
 
Sgci ecss symposium-12-20-16
Sgci ecss symposium-12-20-16Sgci ecss symposium-12-20-16
Sgci ecss symposium-12-20-16
 
Embracing student innovation in the age of Generative AI
Embracing student innovation in the age of Generative AIEmbracing student innovation in the age of Generative AI
Embracing student innovation in the age of Generative AI
 
Final presentation SACES 2014
Final presentation SACES 2014Final presentation SACES 2014
Final presentation SACES 2014
 
Using Archivemedia to preserve research data
Using Archivemedia to preserve research dataUsing Archivemedia to preserve research data
Using Archivemedia to preserve research data
 

More from Marlon Pierce (6)

Apache Airavata SGCI Webinar 8 April 2020
Apache Airavata SGCI Webinar 8 April 2020Apache Airavata SGCI Webinar 8 April 2020
Apache Airavata SGCI Webinar 8 April 2020
 
SciGaP Science Gateways for Artificial Intelligence and Machine Learning
SciGaP Science Gateways for Artificial Intelligence and Machine LearningSciGaP Science Gateways for Artificial Intelligence and Machine Learning
SciGaP Science Gateways for Artificial Intelligence and Machine Learning
 
AeroDef 2019 Science Gateways Presentation
AeroDef 2019 Science Gateways PresentationAeroDef 2019 Science Gateways Presentation
AeroDef 2019 Science Gateways Presentation
 
SGCI ADMI April 2019
SGCI ADMI April 2019SGCI ADMI April 2019
SGCI ADMI April 2019
 
SGCI-Mizzou18Sep2017
SGCI-Mizzou18Sep2017SGCI-Mizzou18Sep2017
SGCI-Mizzou18Sep2017
 
SGCI Extended Developer Support All Hands 15march2017
SGCI Extended Developer Support All Hands 15march2017SGCI Extended Developer Support All Hands 15march2017
SGCI Extended Developer Support All Hands 15march2017
 

Recently uploaded

Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
Bhaskar Mitra
 

Recently uploaded (20)

IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and Planning
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara Laskowska
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeFree and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxUnpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
 
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
 
UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
 
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 

Creating a developer pipeline by teaching gateway technologies

  • 1. Welcome to the SGCI Webinar! • We will be starting shortly. • Your audio has been muted, and you are encouraged to turn off your video during the presentation. • Controls for these are near the bottom of the right-side control panel for BlueJeans. • You may submit questions at any time using Chat, and the moderator will share them with the presenter when appropriate. • This presentation will be recorded and slides will be posted. 1
  • 2. Creating a developer pipeline by teaching gateway technologies Marlon Pierce, Suresh Marru Science Gateways Research Center, Indiana University marpierc@iu.edu, smarru@iu.edu
  • 4. The Pipeline Problem Finding and retaining people to work on science gateways is tough.
  • 5.
  • 6. If only there was an untapped reservoir of talent close by....
  • 7.
  • 8. The Pipeline Solution Recruit students to work with us by teaching a graduate level class on the underpinnings of gateways. Embrace change.
  • 9. What Is a Science Gateway? A Science Gateway is a user-centric environment for conducting online computational science
  • 10. (Not actual IU students)
  • 11. What if Mark Zuckerberg Read More Chemistry and Biology Books?
  • 12.
  • 13. Goal 1: Apply basic distributed computing concepts to Science Gateways.
  • 14. Goal 2: Apply new architectures, methodologies, and technologies to Science Gateways: Microservices, DevOps
  • 15. Browser Web Interface Server Application Server Server SDK Client SDK IU: Big Red 2 Resource Plugins XSEDE: Stampede XSEDE: Comet Juelich: Jureca HTTPS HTTP or TCP/IP Facebook doesn’t look like this, so why should science gateways?
  • 16. Goal 3: Teach open source software practices
  • 17. Challenges for Science Gateways • Providing a rich user experience • Defining an API for the application server • Defining the right microservices. • Implementing the components, wiring them together correctly. • Supporting multiple gateway tenants • Fault tolerance for components • State management • Continuous delivery • Security management • Supporting full scientific exploratory cycle
  • 18.
  • 19. What Do We Teach? A quick survey of course material
  • 21. Putting It All Together: Gateways and Microservices
  • 23. API and Metadata Model Design
  • 25. Resource Management and Scheduling: Mesos, Aurora, and Torque
  • 26. Distributed State Management: Zookeeper, Consul
  • 27. Security: OAuth2 and OpenIDConnect
  • 28. Putting It All In Place: Continuous Integration and Deployment
  • 29.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35. More Information and Next Steps • http://courses.airavata.org • Additional material in Canvas • Details on assignments • We are interested in taking this to a broader audience
  • 36. Thank you for participating! • Please offer your feedback with our 30-second evaluation: http://sciencegateways.org/webinareval • Join us next month (March 8) for Building a Modern Research Data Portal with Globus – Introduction to the Globus Platform 36
  • 38. Spring 2016 Course Overview • Students organized into teams of 3-4 • 8 biweekly project milestones, each depended on the previous assignment. • Basic sequence, Part 1: • Learn to submit jobs on IU’s Karst Cluster, MOAB scheduler • Develop core job management application • Design an API • Design a Web front end • Capture job execution metadata • All code must be in GitHub, must build cleanly on the grader’s laptop
  • 39. Spring 2016 Project Milestones, Part 2 • Integrate with a continuous integration and deployment system • Travis-CI and Amazon Code-Deploy • Apache Jenkins on Jetstream • Break up your monolithic Web applications into microservices • Combine with CI/CD
  • 40. Spring 2016: What Worked, What Didn’t? • Small class, we got to know the students pretty well. • Students managed to build basic functioning gateways that used CI/CD automatically linked to GitHub accounts. • Students got bogged down in job submission issues. • Students had trouble breaking up their monolithic Web applications into microservices.
  • 41. Fall 2016: Begin at the End • For Fall 2016, we reverse the order. • Students learned CI/CD and microservices in the first assignments. • We moved aggressively to problems of load balancing, fault tolerance, and containerization of services. • We de-emphasized job submission to traditional clusters • Used Apache Mesos and Apache Aurora for this.
  • 42. Fall 2016: What Worked, What Didn’t • All the students were able to keep up with the assignments. • Many were using technologies for the first time. • Some surprises • Some teams took it as a challenge to use different approaches. • Didn’t have the chance to get to know students as well as before. • Larger class, graders • Monthly assignments were too large. • Biweekly worked better.
  • 43. Spring 2017: Advanced Topics • In the Spring 2016 and Fall 2016 courses, we knew the answers (mostly). • Now in Spring 2017 course, we tackle problems we don’t know the answers to. • Or, if you prefer, for a given problem, • Introductory Class: Find an answer that works • Advanced Class: Find the best answer • How do you do that?

Editor's Notes

  1. For Blue Jeans