SlideShare a Scribd company logo
Life of a Bulgardener: eXtreme
Programming in Practice
Georgi Sabev, SAP
Yulia Nedyalkova, SAP
TL;DR
• Team
• Process
• Practices
The Team
What are we building
Who are we
Team Structure
Team Structure
• Product Manager
• Anchor
• Engineers
How did we get
here?
How to become a Cloud Foundry committer?
• Active contributor
• CF DOJO
• Working in-person with other Cloud Foundry engineers
• Pair programming interview
• 6-12 weeks
The Process
• Inception
• Weekly iterations
• Continuous Release
Inception
Week
Day
IPM
Retro
Standup
Milestones
Inception
Inception
• At the beginning of a project or a new topic
• Goals
• Anti-goals
• Risks
• User Story Mapping
Inception:
Risks
Inception: User story mapping
Interactive
Planning Meeting
• Upcoming work
• Story Points
• Breakdown
Tech session
Retrospective
Standup
• Status
• Pairing
• Parking Lot
Pair Programming
Physical Setup
Pair Programming Pros
• Collective mind
• Knowledge transfer
• Flexibility
• Communication & Discipline
Pair Programming Cons
• Takes more time
• Loss of initiative
• It takes faith
• Little time on your own
To pair or not to pair
• Reading
• Trivial or easy tasks
• Have breaks
Test-driven development
Make it
pass
Refactor
Write a
failing
test
Our tests
Unit
Black-box integration
White-box integration
How we do TDD
Top down approach
• Write an integration test and see it fail
• Start applying TDD on unit test level until functionality is finished
• See integration test passing
Ping-pong
programming
Why we don’t like TDD
• Hard
• Slow
Why we do
• Forces good design
• Make code easy to test
• Increase code coverage
Automation & CI
Flake
hunting
Thank you!
Used Resources
• Images
• CC: https://creativecommons.org/licenses/by/2.0/
• https://goo.gl/L2fg2E
• https://goo.gl/5U8Kd7
• https://goo.gl/vPZVnE
• https://goo.gl/e3H7Hm
• https://goo.gl/yRyC9d
• https://goo.gl/ek7XLp
• CC BY-NC https://creativecommons.org/licenses/by-nc/2.0/
• https://goo.gl/3yyi8z
• Tools:
• Postfacto: https://postfacto.io/
• Concourse: http://concourse.ci/
• Pivotal Tracker: www.pivotaltracker.com
• Pairup Board: https://github.com/julz/pairup9000

More Related Content

What's hot

Synerzip Agile Software Development
Synerzip Agile Software DevelopmentSynerzip Agile Software Development
Synerzip Agile Software Development
Synerzip
 
Scrum 101: Introduction to Scrum
Scrum 101: Introduction to ScrumScrum 101: Introduction to Scrum
Scrum 101: Introduction to Scrum
Arrielle Mali
 
Introduction to Agile - Scrum, Kanban, and everything in between
Introduction to Agile - Scrum, Kanban, and everything in betweenIntroduction to Agile - Scrum, Kanban, and everything in between
Introduction to Agile - Scrum, Kanban, and everything in between
Pravin Kumar Singh, PMP, PSM
 
Agile methodology v 4.5 s
Agile methodology   v 4.5 sAgile methodology   v 4.5 s
Agile methodology v 4.5 sJames Sutter
 
Agile Roles & responsibilities
Agile Roles & responsibilitiesAgile Roles & responsibilities
Agile Roles & responsibilities
Ravi Tadwalkar
 
Value Driven Development by Dave Thomas
Value Driven Development by Dave Thomas Value Driven Development by Dave Thomas
Value Driven Development by Dave Thomas
Naresh Jain
 
Understanding Agile Hardware
Understanding Agile HardwareUnderstanding Agile Hardware
Understanding Agile Hardware
Cprime
 
Intro Of Agile
Intro Of AgileIntro Of Agile
Intro Of Agile
Sam Hwang
 
Sustainable SW Development
Sustainable SW DevelopmentSustainable SW Development
Sustainable SW Development
Sam Hwang
 
Project Management to Enterprise Agile Product Delivery
Project Management to Enterprise Agile Product DeliveryProject Management to Enterprise Agile Product Delivery
Project Management to Enterprise Agile Product Delivery
LeadingAgile
 
Scrum in an hour
Scrum in an hourScrum in an hour
Scrum in an hour
Giordano Scalzo
 
Agile & Scrum – intro slides
Agile & Scrum – intro slidesAgile & Scrum – intro slides
Agile & Scrum – intro slides
Artem Bykovets
 
Introduction to Agile-Scrum
Introduction to Agile-ScrumIntroduction to Agile-Scrum
Introduction to Agile-Scrum
Praveen Nair
 
Assessing Your Agility: Introducing the Comparative Agility Assessment
Assessing Your Agility: Introducing the Comparative Agility AssessmentAssessing Your Agility: Introducing the Comparative Agility Assessment
Assessing Your Agility: Introducing the Comparative Agility AssessmentMike Cohn
 
Lean, Kanban and TFS
Lean, Kanban and TFSLean, Kanban and TFS
Lean, Kanban and TFS
Imaginet
 
Agile Fundamentals
Agile FundamentalsAgile Fundamentals
Agile Fundamentals
Dennis Stevens
 
Introduction to kanban calgary .net user group - feb 6
Introduction to kanban   calgary .net user group - feb 6Introduction to kanban   calgary .net user group - feb 6
Introduction to kanban calgary .net user group - feb 6
Dave White
 
Introduction to agile and scrum
Introduction to agile and scrumIntroduction to agile and scrum
Introduction to agile and scrum
Anat (Alon) Salhov
 
cPrime - Agile Quality Engineering
cPrime - Agile Quality EngineeringcPrime - Agile Quality Engineering
cPrime - Agile Quality Engineering
Cprime
 

What's hot (20)

Synerzip Agile Software Development
Synerzip Agile Software DevelopmentSynerzip Agile Software Development
Synerzip Agile Software Development
 
Scrum 101: Introduction to Scrum
Scrum 101: Introduction to ScrumScrum 101: Introduction to Scrum
Scrum 101: Introduction to Scrum
 
Introduction to Agile - Scrum, Kanban, and everything in between
Introduction to Agile - Scrum, Kanban, and everything in betweenIntroduction to Agile - Scrum, Kanban, and everything in between
Introduction to Agile - Scrum, Kanban, and everything in between
 
Agile methodology v 4.5 s
Agile methodology   v 4.5 sAgile methodology   v 4.5 s
Agile methodology v 4.5 s
 
Agile Roles & responsibilities
Agile Roles & responsibilitiesAgile Roles & responsibilities
Agile Roles & responsibilities
 
Value Driven Development by Dave Thomas
Value Driven Development by Dave Thomas Value Driven Development by Dave Thomas
Value Driven Development by Dave Thomas
 
Understanding Agile Hardware
Understanding Agile HardwareUnderstanding Agile Hardware
Understanding Agile Hardware
 
Intro Of Agile
Intro Of AgileIntro Of Agile
Intro Of Agile
 
Sustainable SW Development
Sustainable SW DevelopmentSustainable SW Development
Sustainable SW Development
 
Project Management to Enterprise Agile Product Delivery
Project Management to Enterprise Agile Product DeliveryProject Management to Enterprise Agile Product Delivery
Project Management to Enterprise Agile Product Delivery
 
Scrum in an hour
Scrum in an hourScrum in an hour
Scrum in an hour
 
Agile & Scrum – intro slides
Agile & Scrum – intro slidesAgile & Scrum – intro slides
Agile & Scrum – intro slides
 
Introduction to Agile-Scrum
Introduction to Agile-ScrumIntroduction to Agile-Scrum
Introduction to Agile-Scrum
 
Assessing Your Agility: Introducing the Comparative Agility Assessment
Assessing Your Agility: Introducing the Comparative Agility AssessmentAssessing Your Agility: Introducing the Comparative Agility Assessment
Assessing Your Agility: Introducing the Comparative Agility Assessment
 
Lean, Kanban and TFS
Lean, Kanban and TFSLean, Kanban and TFS
Lean, Kanban and TFS
 
Agile Fundamentals
Agile FundamentalsAgile Fundamentals
Agile Fundamentals
 
Introduction to kanban calgary .net user group - feb 6
Introduction to kanban   calgary .net user group - feb 6Introduction to kanban   calgary .net user group - feb 6
Introduction to kanban calgary .net user group - feb 6
 
Agile roles
Agile rolesAgile roles
Agile roles
 
Introduction to agile and scrum
Introduction to agile and scrumIntroduction to agile and scrum
Introduction to agile and scrum
 
cPrime - Agile Quality Engineering
cPrime - Agile Quality EngineeringcPrime - Agile Quality Engineering
cPrime - Agile Quality Engineering
 

Similar to Life Of A Bulgardener: eXtreme Programming In Practice

Scrum plus – why scrum is not enough for successful delivery
Scrum plus – why scrum is not enough for successful deliveryScrum plus – why scrum is not enough for successful delivery
Scrum plus – why scrum is not enough for successful delivery
Naveen Kumar Singh
 
Graduate trainee program
Graduate trainee programGraduate trainee program
Graduate trainee program
Clarice Dass
 
Internship project presentation
Internship project presentationInternship project presentation
Internship project presentation
JAI KISHAN CHAURASIA
 
Sprint Reviews that Attract, Engage, and Enlighten Stakeholders
Sprint Reviews that Attract, Engage, and Enlighten StakeholdersSprint Reviews that Attract, Engage, and Enlighten Stakeholders
Sprint Reviews that Attract, Engage, and Enlighten Stakeholders
TechWell
 
Agile Fundamentals
Agile FundamentalsAgile Fundamentals
Agile Fundamentals
Graham Dick
 
Choosing the right agile approach for your organization
Choosing the right agile approach for your organizationChoosing the right agile approach for your organization
Choosing the right agile approach for your organizationInCycle Software
 
Developer Productivity Engineering with Gradle
Developer Productivity Engineering with GradleDeveloper Productivity Engineering with Gradle
Developer Productivity Engineering with Gradle
All Things Open
 
It's XP Stupid (2019)
It's XP Stupid (2019)It's XP Stupid (2019)
It's XP Stupid (2019)
Mike Harris
 
Post agile confessions
Post agile confessionsPost agile confessions
Post agile confessions
Stojan Peshov
 
Михайло Кравець “Використання Agile методології в AAA розробці ігор” GameDev ...
Михайло Кравець “Використання Agile методології в AAA розробці ігор” GameDev ...Михайло Кравець “Використання Agile методології в AAA розробці ігор” GameDev ...
Михайло Кравець “Використання Agile методології в AAA розробці ігор” GameDev ...
Lviv Startup Club
 
Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...
Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...
Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...
Maurizio Mancini
 
Enterprise Dojos: Values, Principles, and Cultural Perspective
Enterprise Dojos: Values, Principles, and Cultural PerspectiveEnterprise Dojos: Values, Principles, and Cultural Perspective
Enterprise Dojos: Values, Principles, and Cultural Perspective
Cprime
 
Introduction to java
Introduction to javaIntroduction to java
Introduction to java
SophiaWilson22
 
Creating Dynamic Sprint Reviews - cPrime Presentation
Creating Dynamic Sprint Reviews - cPrime Presentation Creating Dynamic Sprint Reviews - cPrime Presentation
Creating Dynamic Sprint Reviews - cPrime Presentation Cprime
 
Supporting Drupal over the Longterm
Supporting Drupal over the LongtermSupporting Drupal over the Longterm
Supporting Drupal over the LongtermAnne Stefanyk
 
How to scale product development when you no longer fit in one room
How to scale product development when you no longer fit in one roomHow to scale product development when you no longer fit in one room
How to scale product development when you no longer fit in one room
Matthias Luebken
 
DevOps: What's Buried in the Fine Print
DevOps: What's Buried in the Fine PrintDevOps: What's Buried in the Fine Print
DevOps: What's Buried in the Fine Print
Jeffery Smith
 
Swimming against the waterfall@GRNET
Swimming against the waterfall@GRNETSwimming against the waterfall@GRNET
Swimming against the waterfall@GRNET
ibyron
 
They Said, We Said: Bridge the Communication Gap with Behavior-Driven Develop...
They Said, We Said: Bridge the Communication Gap with Behavior-Driven Develop...They Said, We Said: Bridge the Communication Gap with Behavior-Driven Develop...
They Said, We Said: Bridge the Communication Gap with Behavior-Driven Develop...
TechWell
 

Similar to Life Of A Bulgardener: eXtreme Programming In Practice (20)

Scrum plus – why scrum is not enough for successful delivery
Scrum plus – why scrum is not enough for successful deliveryScrum plus – why scrum is not enough for successful delivery
Scrum plus – why scrum is not enough for successful delivery
 
Graduate trainee program
Graduate trainee programGraduate trainee program
Graduate trainee program
 
Internship project presentation
Internship project presentationInternship project presentation
Internship project presentation
 
Sprint Reviews that Attract, Engage, and Enlighten Stakeholders
Sprint Reviews that Attract, Engage, and Enlighten StakeholdersSprint Reviews that Attract, Engage, and Enlighten Stakeholders
Sprint Reviews that Attract, Engage, and Enlighten Stakeholders
 
Agile Fundamentals
Agile FundamentalsAgile Fundamentals
Agile Fundamentals
 
Choosing the right agile approach for your organization
Choosing the right agile approach for your organizationChoosing the right agile approach for your organization
Choosing the right agile approach for your organization
 
Developer Productivity Engineering with Gradle
Developer Productivity Engineering with GradleDeveloper Productivity Engineering with Gradle
Developer Productivity Engineering with Gradle
 
It's XP Stupid (2019)
It's XP Stupid (2019)It's XP Stupid (2019)
It's XP Stupid (2019)
 
Post agile confessions
Post agile confessionsPost agile confessions
Post agile confessions
 
Михайло Кравець “Використання Agile методології в AAA розробці ігор” GameDev ...
Михайло Кравець “Використання Agile методології в AAA розробці ігор” GameDev ...Михайло Кравець “Використання Agile методології в AAA розробці ігор” GameDev ...
Михайло Кравець “Використання Agile методології в AAA розробці ігор” GameDev ...
 
Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...
Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...
Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...
 
Enterprise Dojos: Values, Principles, and Cultural Perspective
Enterprise Dojos: Values, Principles, and Cultural PerspectiveEnterprise Dojos: Values, Principles, and Cultural Perspective
Enterprise Dojos: Values, Principles, and Cultural Perspective
 
Introduction to java
Introduction to javaIntroduction to java
Introduction to java
 
Creating Dynamic Sprint Reviews - cPrime Presentation
Creating Dynamic Sprint Reviews - cPrime Presentation Creating Dynamic Sprint Reviews - cPrime Presentation
Creating Dynamic Sprint Reviews - cPrime Presentation
 
Summer Scrum Public
Summer Scrum PublicSummer Scrum Public
Summer Scrum Public
 
Supporting Drupal over the Longterm
Supporting Drupal over the LongtermSupporting Drupal over the Longterm
Supporting Drupal over the Longterm
 
How to scale product development when you no longer fit in one room
How to scale product development when you no longer fit in one roomHow to scale product development when you no longer fit in one room
How to scale product development when you no longer fit in one room
 
DevOps: What's Buried in the Fine Print
DevOps: What's Buried in the Fine PrintDevOps: What's Buried in the Fine Print
DevOps: What's Buried in the Fine Print
 
Swimming against the waterfall@GRNET
Swimming against the waterfall@GRNETSwimming against the waterfall@GRNET
Swimming against the waterfall@GRNET
 
They Said, We Said: Bridge the Communication Gap with Behavior-Driven Develop...
They Said, We Said: Bridge the Communication Gap with Behavior-Driven Develop...They Said, We Said: Bridge the Communication Gap with Behavior-Driven Develop...
They Said, We Said: Bridge the Communication Gap with Behavior-Driven Develop...
 

Recently uploaded

Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
XfilesPro
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Łukasz Chruściel
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
Hornet Dynamics
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Globus
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
abdulrafaychaudhry
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
Aftab Hussain
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
Juraj Vysvader
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
lorraineandreiamcidl
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
Donna Lenk
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
Drona Infotech
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
Globus
 

Recently uploaded (20)

Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
 

Life Of A Bulgardener: eXtreme Programming In Practice

Editor's Notes

  1. Cloud Foundry multi tenant application platform. Containers: performance, isolation, density. Garden: CF’s container runtime, low level, linux kernel, golang. Garden team. 1 team, 2 countries, 3 companies Roles; PM, anchor, engineers, 4 pairs Gardeners, Bulgardeners.
  2. Every developer can join the foundation as a “commiter”, responsible for building the cloud app platform, Typically employed by companies that participate in Cloud Foundry as a member or Certified Platform. Active Contributor: Anyone can contribute to Cloud Foundry (with a signed CLA) and those that have demonstrated consistently valuable and high quality contributions may be nominated to become a project committer by the project team. Cloud Foundry Dojo: unique approach to gaining Committer status by working in-person with other Cloud Foundry engineers.
  3. There are three main cycles Inception weekly iterations. standup meeting. No commitment, milestone
  4. Finish Lines are milestones Release not bound to weekly iterations
  5. On this meeting the IPM presents the topic to the team and the main goal at the end is that every team member has a deep understanding of what the team should build as a product and the main steps to how to achieve that. Typically the process takes half or a full day and the whole product team should attend. Remoters
  6. Pointing. Story points: complexity, not time. 1pt for simple time consuming story Velocity. Driving analogy – good to know velocity. Fibonacci points Types of stories Pointing encourages discussion Flesh out acceptance Breakdown Key for predictability Reduce scope to be able to point a story
  7. Optional Spread knowledge in the team about difference topics. Any team member can propose a topic and present it in front of the team. When new team members are joining - using this time slot to make intro sessions (for example basic arcitecture and stuff)
  8. Everyone is sitting down Status on tracks Decide on pairing Soloing Local pairing
  9. Everyone is sitting down Status on tracks Decide on pairing Soloing Local pairing
  10. Two monitors Large desks 2 pairs of peripheral devices Headphones with mic Slack, zoom, tmate
  11. Two mirrored monitors Large desk 2 pairs of peripheral devices Headphones with mic Slack, zoom, tmate
  12. Collective mind Less likely to get stuck Combinations of ideas Knowledge transfer: Daily rotations Sharing knowledge (pairing on different levels) Engagement – you will have to stick Learning tricks rom the other pair – tools, scripting, shortcuts Flexibility Bus factor Communication Get to know everyone Communicate more and better Discpipline Best practices are looked after, live code review No attachment
  13. But that is time well spent If you do not participate enough Easy to blame the process when we are applying it wrongly Hard to catch up with communication, thinking about stuff
  14. Who knows what TDD is?
  15. Black-box: do not care about implementational details
  16. Forces: equally active, stay concetrated
  17. Slow – spend more time to write tests that actual code
  18. Concourse, pipeline Periodic tests that test that check if the code & tests are stable. Tests are code without tests -> Very often we catch flakes (ocassionally failing).