SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Downloaden Sie, um offline zu lesen
@ALINPANDICHI #ITAKEUNCONF
INCREMENTAL FEATURE
DEVELOPMENT WITH
WEB COMPONENTS
A   L I V E   C O D I N G   T A L E
Alin Pandichi  |  Software Developer at MozaicLabs
SO, WHAT DO YOU DO?
Agile Talks in Bucharest
Open Space
Coding Dojo
Product Development from scratch
Global Day of Coderetreat
Software Developer
at MozaicLabs
building eventriX 
@ALINPANDICHI #ITAKEUNCONF
INCREMENTAL FEATURE
DEVELOPMENT
"increasing increments of capability"
- Wikipedia -
https://pixabay.com/en/steps-staircase-climbing-1081909/
@ALINPANDICHI #ITAKEUNCONF
https://en.wikipedia.org/wiki/Iterative_and_incremental_development
https://twitter.com/uipatternscom/status/610073038596476928
@ALINPANDICHI #ITAKEUNCONF
AS A DEVELOPER,
I WANT TECHNIQUES,
SO THAT I CAN DEAL
 WITH COMPLEXITY
https://www.solutionsiq.com/resource/blog-post/what-big-user-stories-could-be-telling-you/
@ALINPANDICHI #ITAKEUNCONF
TECHNIQUES TO DEAL
WITH COMPLEXITY
Story Slicing
Prioritization
Commit often
(baby steps)
Web Components
(composable, reusable,
interoperable)
https://www.solutionsiq.com/resource/blog-post/what-big-user-stories-could-be-telling-you/
@ALINPANDICHI #ITAKEUNCONF
https://mozaicworks.com/blog/splitting-user-stories/
https://en.wikipedia.org/wiki/MoSCoW_method
http://blog.adrianbolboaca.ro/2013/03/taking-baby-steps/
TOOLS TO DEAL WITH
COMPLEXITY
Web Components
1. Address a common
need.
2. Do one job really well.
3. Work predictably in a
wide variety of
circumstances.
4. Be useful right out of
the box.
https://www.solutionsiq.com/resource/blog-post/what-big-user-stories-could-be-telling-you/
@ALINPANDICHI #ITAKEUNCONF
https://github.com/basic-web-components/components-dev/wiki/Ten-Principles-for-Great-General-Purpose-Web-Components
TOOLS TO DEAL WITH
COMPLEXITY
Web Components
5. Be composable
6. Be styleable.
7. Be extensible.
8. Think small.
9. Adapt to the user and
device.
10. Deliver the key
benefit to HTML
authors, not just coders.
https://www.solutionsiq.com/resource/blog-post/what-big-user-stories-could-be-telling-you/
@ALINPANDICHI #ITAKEUNCONF
https://github.com/basic-web-components/components-dev/wiki/Ten-Principles-for-Great-General-Purpose-Web-Components
OK, I LIED A BIT...
Web Components =
encapsulated
and interoperable
custom elements
that extend HTML itself
https://saikoticmurhmade.deviantart.com/art/ALL-LIES-306278583
@ALINPANDICHI #ITAKEUNCONF
OK, I LIED A BIT...
Web Components =
encapsulated
and interoperable
custom elements
that extend HTML itself
https://saikoticmurhmade.deviantart.com/art/ALL-LIES-306278583
@ALINPANDICHI #ITAKEUNCONF
OK, I LIED A BIT...
Web Components =
encapsulated
and interoperable
custom elements
that extend HTML itself
https://saikoticmurhmade.deviantart.com/art/ALL-LIES-306278583
___________________________
@ALINPANDICHI #ITAKEUNCONF
FOR EXAMPLE...
https://eventrix.co
@ALINPANDICHI #ITAKEUNCONF
FOR EXAMPLE...
https://github.com/apandichi/web-components-feature-dev
@ALINPANDICHI #ITAKEUNCONF
REQUIREMENTS
Material design
A list of talks
Button to add new talk
Dialog form to add talk
Speaker suggestions
Auto-complete avatar
Delay suggestions
Loading bar
@ALINPANDICHI #ITAKEUNCONF
DEMO TIME!
@ALINPANDICHI #ITAKEUNCONF
LAYERS OF
COMPONENTS
- Debounce
  - Autosuggest
    - Field
      - Input
@ALINPANDICHI #ITAKEUNCONF
TOOLS & TECHNIQUES
Slicing
Prioritization
Baby steps
(commit often)
Web Components
(composable, reusable,
interoperable)
@ALINPANDICHI #ITAKEUNCONF
https://mozaicworks.com/blog/splitting-user-stories/
https://en.wikipedia.org/wiki/MoSCoW_method
http://blog.adrianbolboaca.ro/2013/03/taking-baby-steps/
https://developer.mozilla.org/en-US/docs/Web/Web_Components
@ALINPANDICHI #ITAKEUNCONF
https://mozaicworks.com/public-trainings-and-workshops/unit-testing-for-react-and-redux-workshop/
@ALINPANDICHI #ITAKEUNCONF
Q U E S T I O N S ?  
F I N D M E O N T W I T T E R
@AlinPandichi
@ALINPANDICHI #ITAKEUNCONF

Weitere ähnliche Inhalte

Mehr von Alin Pandichi (6)

Coding Dojo - Berlin Clock - TDD
Coding Dojo - Berlin Clock - TDDCoding Dojo - Berlin Clock - TDD
Coding Dojo - Berlin Clock - TDD
 
Coding Dojo - Golden Master Technique - Approval Tests - Gilded Rose Kata-
Coding Dojo - Golden Master Technique - Approval Tests - Gilded Rose Kata-Coding Dojo - Golden Master Technique - Approval Tests - Gilded Rose Kata-
Coding Dojo - Golden Master Technique - Approval Tests - Gilded Rose Kata-
 
Coding Dojo - Refactoring Tennis Kata
Coding Dojo - Refactoring Tennis KataCoding Dojo - Refactoring Tennis Kata
Coding Dojo - Refactoring Tennis Kata
 
Avatar.js
Avatar.jsAvatar.js
Avatar.js
 
Software development - the java perspective
Software development - the java perspectiveSoftware development - the java perspective
Software development - the java perspective
 
Java 8 - Lambdas and much more
Java 8 - Lambdas and much moreJava 8 - Lambdas and much more
Java 8 - Lambdas and much more
 

Kürzlich hochgeladen

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
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
masabamasaba
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 

Kürzlich hochgeladen (20)

Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
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
 
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
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
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
%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
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
SHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationSHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions Presentation
 
%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
 
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
 

Incremental Feature Development with Web Components

  • 1. @ALINPANDICHI #ITAKEUNCONF INCREMENTAL FEATURE DEVELOPMENT WITH WEB COMPONENTS A   L I V E   C O D I N G   T A L E Alin Pandichi  |  Software Developer at MozaicLabs
  • 2. SO, WHAT DO YOU DO? Agile Talks in Bucharest Open Space Coding Dojo Product Development from scratch Global Day of Coderetreat Software Developer at MozaicLabs building eventriX  @ALINPANDICHI #ITAKEUNCONF
  • 3. INCREMENTAL FEATURE DEVELOPMENT "increasing increments of capability" - Wikipedia - https://pixabay.com/en/steps-staircase-climbing-1081909/ @ALINPANDICHI #ITAKEUNCONF https://en.wikipedia.org/wiki/Iterative_and_incremental_development
  • 5. AS A DEVELOPER, I WANT TECHNIQUES, SO THAT I CAN DEAL  WITH COMPLEXITY https://www.solutionsiq.com/resource/blog-post/what-big-user-stories-could-be-telling-you/ @ALINPANDICHI #ITAKEUNCONF
  • 6. TECHNIQUES TO DEAL WITH COMPLEXITY Story Slicing Prioritization Commit often (baby steps) Web Components (composable, reusable, interoperable) https://www.solutionsiq.com/resource/blog-post/what-big-user-stories-could-be-telling-you/ @ALINPANDICHI #ITAKEUNCONF https://mozaicworks.com/blog/splitting-user-stories/ https://en.wikipedia.org/wiki/MoSCoW_method http://blog.adrianbolboaca.ro/2013/03/taking-baby-steps/
  • 7. TOOLS TO DEAL WITH COMPLEXITY Web Components 1. Address a common need. 2. Do one job really well. 3. Work predictably in a wide variety of circumstances. 4. Be useful right out of the box. https://www.solutionsiq.com/resource/blog-post/what-big-user-stories-could-be-telling-you/ @ALINPANDICHI #ITAKEUNCONF https://github.com/basic-web-components/components-dev/wiki/Ten-Principles-for-Great-General-Purpose-Web-Components
  • 8. TOOLS TO DEAL WITH COMPLEXITY Web Components 5. Be composable 6. Be styleable. 7. Be extensible. 8. Think small. 9. Adapt to the user and device. 10. Deliver the key benefit to HTML authors, not just coders. https://www.solutionsiq.com/resource/blog-post/what-big-user-stories-could-be-telling-you/ @ALINPANDICHI #ITAKEUNCONF https://github.com/basic-web-components/components-dev/wiki/Ten-Principles-for-Great-General-Purpose-Web-Components
  • 9. OK, I LIED A BIT... Web Components = encapsulated and interoperable custom elements that extend HTML itself https://saikoticmurhmade.deviantart.com/art/ALL-LIES-306278583 @ALINPANDICHI #ITAKEUNCONF
  • 10. OK, I LIED A BIT... Web Components = encapsulated and interoperable custom elements that extend HTML itself https://saikoticmurhmade.deviantart.com/art/ALL-LIES-306278583 @ALINPANDICHI #ITAKEUNCONF
  • 11. OK, I LIED A BIT... Web Components = encapsulated and interoperable custom elements that extend HTML itself https://saikoticmurhmade.deviantart.com/art/ALL-LIES-306278583 ___________________________ @ALINPANDICHI #ITAKEUNCONF
  • 14. REQUIREMENTS Material design A list of talks Button to add new talk Dialog form to add talk Speaker suggestions Auto-complete avatar Delay suggestions Loading bar @ALINPANDICHI #ITAKEUNCONF
  • 16. LAYERS OF COMPONENTS - Debounce   - Autosuggest     - Field       - Input @ALINPANDICHI #ITAKEUNCONF
  • 17. TOOLS & TECHNIQUES Slicing Prioritization Baby steps (commit often) Web Components (composable, reusable, interoperable) @ALINPANDICHI #ITAKEUNCONF https://mozaicworks.com/blog/splitting-user-stories/ https://en.wikipedia.org/wiki/MoSCoW_method http://blog.adrianbolboaca.ro/2013/03/taking-baby-steps/ https://developer.mozilla.org/en-US/docs/Web/Web_Components
  • 20. Q U E S T I O N S ?   F I N D M E O N T W I T T E R @AlinPandichi @ALINPANDICHI #ITAKEUNCONF