SlideShare uma empresa Scribd logo
1 de 14
Baixar para ler offline
When juniors fail.
Roman & Dmytro
Project “S.”
Google Spreadsheet API.Story #1.
=if(query(FinalOutput!$A$2:$AZ$1000, SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(“SELECT {{Openness}} WHERE {{Name}} = ‘Alex Mot’ AND {{department}}
= ‘Sales’“, “{{Openness}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“Openness”, FinalOutput!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), “{{Name}}“,
REGEXEXTRACT(ADDRESS(1, MATCH(“Name”, FinalOutput!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), “{{department}}“, REGEXEXTRACT(ADDRESS(1,
MATCH(“department”, FinalOutput!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), -1) <> “”, ((query(FinalOutput!$A$2:$AZ$1000,
SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(“SELECT {{Openness}} WHERE {{Name}} = ‘Todd Weiland’ AND {{department}} = ‘Sales’“, “{{Openness}}“,
REGEXEXTRACT(ADDRESS(1, MATCH(“Openness”, FinalOutput!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), “{{Name}}“, REGEXEXTRACT(ADDRESS(1,
MATCH(“Name”, FinalOutput!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), “{{department}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“department”,
FinalOutput!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), -1)) - (query(Params1!$A$2:$AZ$1000, SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(“SELECT {{mean}}
WHERE {{variable}} = ‘Openness’ AND {{department}} = ‘Sales’“, “{{mean}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“mean”, Params1!$A$1:$AZ$1, 0), 4,
TRUE), “[a-zA-Z]+“), 1), “{{variable}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“variable”, Params1!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1),
“{{department}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“department”, Params1!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), -1))) /
(query(Params1!$A$2:$AZ$1000, SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(“SELECT {{sd}} WHERE {{variable}} = ‘Openness’ AND {{department}} = ‘Sales’“,
“{{sd}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“sd”, Params1!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), “{{variable}}“, REGEXEXTRACT(ADDRESS(1,
MATCH(“variable”, Params1!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), “{{department}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“department”,
Params1!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), -1)) * (query(Params1!$A$2:$AZ$1000, SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(“SELECT {{beta}}
WHERE {{variable}} = ‘Openness’ AND {{department}} = ‘Sales’“, “{{beta}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“beta”, Params1!$A$1:$AZ$1, 0), 4,
TRUE), “[a-zA-Z]+“), 1), “{{variable}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“variable”, Params1!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1),
“{{department}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“department”, Params1!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), -1)), “”)
- Batch delete.
- Bulk save.
- Circular calculations.
- Query builder.
- CRUD limited for cols/rows.
- Novice architecture.
- Questions to community.
- Google-solution.
- Incomplete input validation.
- Not ready to scale.
Architecture.Story #2.
Story #3.
IBM Watson API.
- Public API with limitations.
- Caching.
- Input limitations.
- Performance.
- Fat builds.
- Updates mechanism.
- Security.
Electron.js.
Story #4.
- Estimates.
- Deployment & Delivery.
- Code-review process.
- Communication.
Approach.
Story #5.
- Quick fixes (wrong problems).
- Googling.
- Scenarios.
- Freedom!
Experience. Qualitative growth.
Story #6.
Experience matters.

Mais conteúdo relacionado

Semelhante a When juniors fail. (event `Look At My JS` at Lviv)

Climbing the Abstract Syntax Tree (PHP South Africa 2017)
Climbing the Abstract Syntax Tree (PHP South Africa 2017)Climbing the Abstract Syntax Tree (PHP South Africa 2017)
Climbing the Abstract Syntax Tree (PHP South Africa 2017)James Titcumb
 
Functional Programming with Groovy
Functional Programming with GroovyFunctional Programming with Groovy
Functional Programming with GroovyArturo Herrero
 
20160227 Granma
20160227 Granma20160227 Granma
20160227 GranmaSharon Liu
 
Climbing the Abstract Syntax Tree (ScotlandPHP 2018)
Climbing the Abstract Syntax Tree (ScotlandPHP 2018)Climbing the Abstract Syntax Tree (ScotlandPHP 2018)
Climbing the Abstract Syntax Tree (ScotlandPHP 2018)James Titcumb
 
An Introduction to Scala (2014)
An Introduction to Scala (2014)An Introduction to Scala (2014)
An Introduction to Scala (2014)William Narmontas
 
Introduction à CoffeeScript pour ParisRB
Introduction à CoffeeScript pour ParisRB Introduction à CoffeeScript pour ParisRB
Introduction à CoffeeScript pour ParisRB jhchabran
 
Quill + Spark = Better Together
Quill + Spark = Better TogetherQuill + Spark = Better Together
Quill + Spark = Better TogetherAlexander Ioffe
 
Climbing the Abstract Syntax Tree (php[world] 2019)
Climbing the Abstract Syntax Tree (php[world] 2019)Climbing the Abstract Syntax Tree (php[world] 2019)
Climbing the Abstract Syntax Tree (php[world] 2019)James Titcumb
 
Climbing the Abstract Syntax Tree (Midwest PHP 2020)
Climbing the Abstract Syntax Tree (Midwest PHP 2020)Climbing the Abstract Syntax Tree (Midwest PHP 2020)
Climbing the Abstract Syntax Tree (Midwest PHP 2020)James Titcumb
 
Climbing the Abstract Syntax Tree (PHP UK 2018)
Climbing the Abstract Syntax Tree (PHP UK 2018)Climbing the Abstract Syntax Tree (PHP UK 2018)
Climbing the Abstract Syntax Tree (PHP UK 2018)James Titcumb
 
Climbing the Abstract Syntax Tree (PHP Russia 2019)
Climbing the Abstract Syntax Tree (PHP Russia 2019)Climbing the Abstract Syntax Tree (PHP Russia 2019)
Climbing the Abstract Syntax Tree (PHP Russia 2019)James Titcumb
 
Climbing the Abstract Syntax Tree (Southeast PHP 2018)
Climbing the Abstract Syntax Tree (Southeast PHP 2018)Climbing the Abstract Syntax Tree (Southeast PHP 2018)
Climbing the Abstract Syntax Tree (Southeast PHP 2018)James Titcumb
 
Climbing the Abstract Syntax Tree (Bulgaria PHP 2016)
Climbing the Abstract Syntax Tree (Bulgaria PHP 2016)Climbing the Abstract Syntax Tree (Bulgaria PHP 2016)
Climbing the Abstract Syntax Tree (Bulgaria PHP 2016)James Titcumb
 
Hitchhiker's Guide to Functional Programming
Hitchhiker's Guide to Functional ProgrammingHitchhiker's Guide to Functional Programming
Hitchhiker's Guide to Functional ProgrammingSergey Shishkin
 
Climbing the Abstract Syntax Tree (Forum PHP 2017)
Climbing the Abstract Syntax Tree (Forum PHP 2017)Climbing the Abstract Syntax Tree (Forum PHP 2017)
Climbing the Abstract Syntax Tree (Forum PHP 2017)James Titcumb
 
PHP for Python Developers
PHP for Python DevelopersPHP for Python Developers
PHP for Python DevelopersCarlos Vences
 
Interpret this... (PHPem 2016)
Interpret this... (PHPem 2016)Interpret this... (PHPem 2016)
Interpret this... (PHPem 2016)James Titcumb
 
MongoDB World 2019: Aggregation Pipeline Power++: How MongoDB 4.2 Pipeline Em...
MongoDB World 2019: Aggregation Pipeline Power++: How MongoDB 4.2 Pipeline Em...MongoDB World 2019: Aggregation Pipeline Power++: How MongoDB 4.2 Pipeline Em...
MongoDB World 2019: Aggregation Pipeline Power++: How MongoDB 4.2 Pipeline Em...MongoDB
 
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++MongoDB
 

Semelhante a When juniors fail. (event `Look At My JS` at Lviv) (20)

Climbing the Abstract Syntax Tree (PHP South Africa 2017)
Climbing the Abstract Syntax Tree (PHP South Africa 2017)Climbing the Abstract Syntax Tree (PHP South Africa 2017)
Climbing the Abstract Syntax Tree (PHP South Africa 2017)
 
Functional Programming with Groovy
Functional Programming with GroovyFunctional Programming with Groovy
Functional Programming with Groovy
 
20160227 Granma
20160227 Granma20160227 Granma
20160227 Granma
 
Climbing the Abstract Syntax Tree (ScotlandPHP 2018)
Climbing the Abstract Syntax Tree (ScotlandPHP 2018)Climbing the Abstract Syntax Tree (ScotlandPHP 2018)
Climbing the Abstract Syntax Tree (ScotlandPHP 2018)
 
An Introduction to Scala (2014)
An Introduction to Scala (2014)An Introduction to Scala (2014)
An Introduction to Scala (2014)
 
Introduction à CoffeeScript pour ParisRB
Introduction à CoffeeScript pour ParisRB Introduction à CoffeeScript pour ParisRB
Introduction à CoffeeScript pour ParisRB
 
Quill + Spark = Better Together
Quill + Spark = Better TogetherQuill + Spark = Better Together
Quill + Spark = Better Together
 
Climbing the Abstract Syntax Tree (php[world] 2019)
Climbing the Abstract Syntax Tree (php[world] 2019)Climbing the Abstract Syntax Tree (php[world] 2019)
Climbing the Abstract Syntax Tree (php[world] 2019)
 
Climbing the Abstract Syntax Tree (Midwest PHP 2020)
Climbing the Abstract Syntax Tree (Midwest PHP 2020)Climbing the Abstract Syntax Tree (Midwest PHP 2020)
Climbing the Abstract Syntax Tree (Midwest PHP 2020)
 
Climbing the Abstract Syntax Tree (PHP UK 2018)
Climbing the Abstract Syntax Tree (PHP UK 2018)Climbing the Abstract Syntax Tree (PHP UK 2018)
Climbing the Abstract Syntax Tree (PHP UK 2018)
 
Climbing the Abstract Syntax Tree (PHP Russia 2019)
Climbing the Abstract Syntax Tree (PHP Russia 2019)Climbing the Abstract Syntax Tree (PHP Russia 2019)
Climbing the Abstract Syntax Tree (PHP Russia 2019)
 
Climbing the Abstract Syntax Tree (Southeast PHP 2018)
Climbing the Abstract Syntax Tree (Southeast PHP 2018)Climbing the Abstract Syntax Tree (Southeast PHP 2018)
Climbing the Abstract Syntax Tree (Southeast PHP 2018)
 
Climbing the Abstract Syntax Tree (Bulgaria PHP 2016)
Climbing the Abstract Syntax Tree (Bulgaria PHP 2016)Climbing the Abstract Syntax Tree (Bulgaria PHP 2016)
Climbing the Abstract Syntax Tree (Bulgaria PHP 2016)
 
Hitchhiker's Guide to Functional Programming
Hitchhiker's Guide to Functional ProgrammingHitchhiker's Guide to Functional Programming
Hitchhiker's Guide to Functional Programming
 
Climbing the Abstract Syntax Tree (Forum PHP 2017)
Climbing the Abstract Syntax Tree (Forum PHP 2017)Climbing the Abstract Syntax Tree (Forum PHP 2017)
Climbing the Abstract Syntax Tree (Forum PHP 2017)
 
PHP for Python Developers
PHP for Python DevelopersPHP for Python Developers
PHP for Python Developers
 
Interpret this... (PHPem 2016)
Interpret this... (PHPem 2016)Interpret this... (PHPem 2016)
Interpret this... (PHPem 2016)
 
MongoDB World 2019: Aggregation Pipeline Power++: How MongoDB 4.2 Pipeline Em...
MongoDB World 2019: Aggregation Pipeline Power++: How MongoDB 4.2 Pipeline Em...MongoDB World 2019: Aggregation Pipeline Power++: How MongoDB 4.2 Pipeline Em...
MongoDB World 2019: Aggregation Pipeline Power++: How MongoDB 4.2 Pipeline Em...
 
Elegant objects
Elegant objectsElegant objects
Elegant objects
 
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
 

Último

Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
[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
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
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
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
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
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 

Último (20)

Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
[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
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
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
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
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
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 

When juniors fail. (event `Look At My JS` at Lviv)

  • 3.
  • 5.
  • 6. Google Spreadsheet API.Story #1. =if(query(FinalOutput!$A$2:$AZ$1000, SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(“SELECT {{Openness}} WHERE {{Name}} = ‘Alex Mot’ AND {{department}} = ‘Sales’“, “{{Openness}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“Openness”, FinalOutput!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), “{{Name}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“Name”, FinalOutput!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), “{{department}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“department”, FinalOutput!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), -1) <> “”, ((query(FinalOutput!$A$2:$AZ$1000, SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(“SELECT {{Openness}} WHERE {{Name}} = ‘Todd Weiland’ AND {{department}} = ‘Sales’“, “{{Openness}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“Openness”, FinalOutput!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), “{{Name}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“Name”, FinalOutput!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), “{{department}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“department”, FinalOutput!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), -1)) - (query(Params1!$A$2:$AZ$1000, SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(“SELECT {{mean}} WHERE {{variable}} = ‘Openness’ AND {{department}} = ‘Sales’“, “{{mean}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“mean”, Params1!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), “{{variable}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“variable”, Params1!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), “{{department}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“department”, Params1!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), -1))) / (query(Params1!$A$2:$AZ$1000, SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(“SELECT {{sd}} WHERE {{variable}} = ‘Openness’ AND {{department}} = ‘Sales’“, “{{sd}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“sd”, Params1!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), “{{variable}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“variable”, Params1!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), “{{department}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“department”, Params1!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), -1)) * (query(Params1!$A$2:$AZ$1000, SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(“SELECT {{beta}} WHERE {{variable}} = ‘Openness’ AND {{department}} = ‘Sales’“, “{{beta}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“beta”, Params1!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), “{{variable}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“variable”, Params1!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), “{{department}}“, REGEXEXTRACT(ADDRESS(1, MATCH(“department”, Params1!$A$1:$AZ$1, 0), 4, TRUE), “[a-zA-Z]+“), 1), -1)), “”) - Batch delete. - Bulk save. - Circular calculations. - Query builder. - CRUD limited for cols/rows.
  • 7.
  • 8.
  • 9. - Novice architecture. - Questions to community. - Google-solution. - Incomplete input validation. - Not ready to scale. Architecture.Story #2.
  • 10. Story #3. IBM Watson API. - Public API with limitations. - Caching. - Input limitations.
  • 11. - Performance. - Fat builds. - Updates mechanism. - Security. Electron.js. Story #4.
  • 12. - Estimates. - Deployment & Delivery. - Code-review process. - Communication. Approach. Story #5.
  • 13. - Quick fixes (wrong problems). - Googling. - Scenarios. - Freedom! Experience. Qualitative growth. Story #6.