SlideShare ist ein Scribd-Unternehmen logo
1 von 37
Downloaden Sie, um offline zu lesen
Ruby approaches in
projection of professional
growth
Max Honcharov
WHY ARE WE HERE?
AGENDA
WHO AM I IN CONTEXT OF RESPONSIBILITY?
WHAT ISSUES RUBY/RAILS HAS?
HOW CAN WE SOLVE IT?
HOW DIFFERENT PEOPLE WILL DO IT?
WHERE IS EXIT HERE?
WHO AM I IN CONTEXT OF RESPONSIBILITY?
RESPONSIBILITY GRADES
TRAINEE
JUNIOR
MIDDLE
SENIOR
LEAD
TRAINEE
JUNIOR
MIDDLE
SENIOR
LEAD
WHAT ISSUES RUBY/RAILS HAS?
ATTENTION!
HOLYWAR IS TOO CLOSE
BUSINESS LOGIC MANIPULATIONS
DOES RAILS PROVIDE SOMETHING?
BUSINESS LOGIC MANIPULATIONS
MVC
BUSINESS LOGIC MANIPULATIONS
IS MODEL FOR BUSINESS LOGIC?
BUSINESS LOGIC MANIPULATIONS
IS MODEL FOR PERSISTENCE LOGIC?
POINTS OF VIEW
MODEL IS FOR BUSINESS LOGIC ONLY
MODEL IS FOR BUSINESS LOGIC AND PERSISTENCE
MODEL IS FOR PERSISTENCE ONLY
MODEL IS JUST ORM ADAPTER
BUSINESS LOGIC MANIPULATIONS
IS CONTROLLER FOR BUSINESS LOGIC?
POINTS OF VIEW
CONTROLLER IS FOR BUSINESS LOGIC
CONTROLLER IS FOR ALL OUTSIDE THE MODEL
CONTROLLER IS FOR AUTH***ON
CONTROLLER IS JUST FOR REQUEST HANDLING AND
ALL ABOUT IT
VIEWS MANIPULATION
IS VIEWS FOR BUSINESS LOGIC?
VIEWS MANIPULATION
IS VIEWS JUST FOR MARKUP AND STYLES?
POINTS OF VIEW
VIEW IS FOR HTML ONLY
VIEW IS FOR DATA OUTPUT
VIEW IS FOR BUSINESS LOGIC
VIEW IS FOR INTERACTION WITH USER
SOLUTIONS
TRAILBLAZER
RECTIFY
INTERACTOR
...
ATTENTION!
NEW HOLYWAR IS CLOSER THAN PREVIOUS
ORM VS PLAIN SQL
HOW OFTEN DO YOU USE PLAIN SQL IN AN APP?
ORM VS PLAIN SQL
IS ACTIVERECORD PANACEA?
ORM VS PLAIN SQL
HOW MANY DEVELOPERS NEED TO SUPPORT THE APP
WITHOUT ORM?
POINTS OF VIEW
SQL IS FOR GEEKS
ORM IS FOR NOOBS
BOTH OF THEM ARE TOOLS
SOLUTIONS
DATAMAPPER AND ANOTHER PATTERNS
DISCOVER DIFFERENT SOLUTIONS
MAKE DECISION BASED ON YOUR CURRENT NEEDS
ATTENTION!
BUTTHURT WILL COME
SPECS
WHAT COVERAGE DO YOU HAVE?
SPECS
HOW DETAILED ARE YOU SPECS?
SPECS
IS MAIN GOAL OF SPECS TO BE PRETTY?
POINTS OF VIEW
CONTEXT VS DESCRIBE
SHOULDA MATCHERS
SUBJECT IS IMMUTABLE
SOLUTIONS
IT’S JUST A TOOL
SPECS ARE NEED TO BE HELPFUL
SPECS DON’T NEED TO BE PRETTY
SPECS ARE NEED TO BE
SUMMARY
CONCENTRATE ON TASKS IN YOUR AREA OF
RESPONSIBILITIES
THE ABILITY TO TAKE RESPONSIBILITY AND
COMPETENTLY APPROACH THE CHOICE OF THE TOOL
MAKES YOU THE BEST DEVELOPERS
YOU CAN’T BE WRONG, YOU CAN USE NOT THE BEST
TOOL
THANK YOU
QUESTIONS?

Weitere ähnliche Inhalte

Ähnlich wie Ruby approaches in the projection of professional growth - Max Goncharov

Intergen Twilight Seminar: What's shaping the Business Systems of the Future
Intergen Twilight Seminar: What's shaping the Business Systems of the FutureIntergen Twilight Seminar: What's shaping the Business Systems of the Future
Intergen Twilight Seminar: What's shaping the Business Systems of the Future
Intergen
 
PayPal Platform - Evolving for Simplicity and Scale: API Strategy & Practice ...
PayPal Platform - Evolving for Simplicity and Scale: API Strategy & Practice ...PayPal Platform - Evolving for Simplicity and Scale: API Strategy & Practice ...
PayPal Platform - Evolving for Simplicity and Scale: API Strategy & Practice ...
Deepak Nadig
 
SoniaSharma_Resume_v2
SoniaSharma_Resume_v2SoniaSharma_Resume_v2
SoniaSharma_Resume_v2
Sonia Sharma
 

Ähnlich wie Ruby approaches in the projection of professional growth - Max Goncharov (20)

Chazey europe ritz hotel london-shared services roundtable-rpa
Chazey europe ritz hotel london-shared services roundtable-rpaChazey europe ritz hotel london-shared services roundtable-rpa
Chazey europe ritz hotel london-shared services roundtable-rpa
 
Intergen Twilight Seminar: What's shaping the Business Systems of the Future
Intergen Twilight Seminar: What's shaping the Business Systems of the FutureIntergen Twilight Seminar: What's shaping the Business Systems of the Future
Intergen Twilight Seminar: What's shaping the Business Systems of the Future
 
Free ebook on rpa
Free ebook on rpa Free ebook on rpa
Free ebook on rpa
 
Free RPA Ebook
Free RPA EbookFree RPA Ebook
Free RPA Ebook
 
Career building and skills development
Career building and skills developmentCareer building and skills development
Career building and skills development
 
Career building and Skills Development
Career building and Skills DevelopmentCareer building and Skills Development
Career building and Skills Development
 
Intergen Think! Seminar: Assesing your fit for ERP cloud
Intergen Think! Seminar: Assesing your fit for ERP cloudIntergen Think! Seminar: Assesing your fit for ERP cloud
Intergen Think! Seminar: Assesing your fit for ERP cloud
 
How to Become an SAP ABAP Developer? Career Scope, Salary, Skills, Future Tre...
How to Become an SAP ABAP Developer? Career Scope, Salary, Skills, Future Tre...How to Become an SAP ABAP Developer? Career Scope, Salary, Skills, Future Tre...
How to Become an SAP ABAP Developer? Career Scope, Salary, Skills, Future Tre...
 
Cómo diseñar un robusto plan de incentivos
Cómo diseñar un robusto plan de incentivosCómo diseñar un robusto plan de incentivos
Cómo diseñar un robusto plan de incentivos
 
Future Of RPA
Future Of RPAFuture Of RPA
Future Of RPA
 
PayPal Platform - Evolving for Simplicity and Scale: API Strategy & Practice ...
PayPal Platform - Evolving for Simplicity and Scale: API Strategy & Practice ...PayPal Platform - Evolving for Simplicity and Scale: API Strategy & Practice ...
PayPal Platform - Evolving for Simplicity and Scale: API Strategy & Practice ...
 
My saperp technology facts -22_11_2011
My saperp   technology facts -22_11_2011My saperp   technology facts -22_11_2011
My saperp technology facts -22_11_2011
 
Career building and skills development new
Career building and skills development newCareer building and skills development new
Career building and skills development new
 
Nintex, SharePoint, & Office 365 Roadmap for Workflow and Forms
Nintex, SharePoint, & Office 365 Roadmap for Workflow and FormsNintex, SharePoint, & Office 365 Roadmap for Workflow and Forms
Nintex, SharePoint, & Office 365 Roadmap for Workflow and Forms
 
SoniaSharma_Resume_v2
SoniaSharma_Resume_v2SoniaSharma_Resume_v2
SoniaSharma_Resume_v2
 
Mavericx_Event_RPA_Questcequecestqueca_.pptx.pdf
Mavericx_Event_RPA_Questcequecestqueca_.pptx.pdfMavericx_Event_RPA_Questcequecestqueca_.pptx.pdf
Mavericx_Event_RPA_Questcequecestqueca_.pptx.pdf
 
SAP Awareness Day in Islamabad:why to become SAP Consultant
SAP Awareness Day in Islamabad:why to become SAP ConsultantSAP Awareness Day in Islamabad:why to become SAP Consultant
SAP Awareness Day in Islamabad:why to become SAP Consultant
 
Rpa busines analys course content
Rpa busines analys course contentRpa busines analys course content
Rpa busines analys course content
 
Pitch Deck Workshop
Pitch Deck WorkshopPitch Deck Workshop
Pitch Deck Workshop
 
Cloud ERP Solutions
Cloud ERP SolutionsCloud ERP Solutions
Cloud ERP Solutions
 

Mehr von Ruby Meditation

Mehr von Ruby Meditation (20)

Is this Legacy or Revenant Code? - Sergey Sergyenko | Ruby Meditation 30
Is this Legacy or Revenant Code? - Sergey Sergyenko  | Ruby Meditation 30Is this Legacy or Revenant Code? - Sergey Sergyenko  | Ruby Meditation 30
Is this Legacy or Revenant Code? - Sergey Sergyenko | Ruby Meditation 30
 
Life with GraphQL API: good practices and unresolved issues - Roman Dubrovsky...
Life with GraphQL API: good practices and unresolved issues - Roman Dubrovsky...Life with GraphQL API: good practices and unresolved issues - Roman Dubrovsky...
Life with GraphQL API: good practices and unresolved issues - Roman Dubrovsky...
 
Where is your license, dude? - Viacheslav Miroshnychenko | Ruby Meditation 29
Where is your license, dude? - Viacheslav Miroshnychenko | Ruby Meditation 29Where is your license, dude? - Viacheslav Miroshnychenko | Ruby Meditation 29
Where is your license, dude? - Viacheslav Miroshnychenko | Ruby Meditation 29
 
Dry-validation update. Dry-validation vs Dry-schema 1.0 - Aleksandra Stolyar ...
Dry-validation update. Dry-validation vs Dry-schema 1.0 - Aleksandra Stolyar ...Dry-validation update. Dry-validation vs Dry-schema 1.0 - Aleksandra Stolyar ...
Dry-validation update. Dry-validation vs Dry-schema 1.0 - Aleksandra Stolyar ...
 
How to cook Rabbit on Production - Bohdan Parshentsev | Ruby Meditation 28
How to cook Rabbit on Production - Bohdan Parshentsev | Ruby Meditation 28 How to cook Rabbit on Production - Bohdan Parshentsev | Ruby Meditation 28
How to cook Rabbit on Production - Bohdan Parshentsev | Ruby Meditation 28
 
How to cook Rabbit on Production - Serhiy Nazarov | Ruby Meditation 28
How to cook Rabbit on Production - Serhiy Nazarov | Ruby Meditation 28How to cook Rabbit on Production - Serhiy Nazarov | Ruby Meditation 28
How to cook Rabbit on Production - Serhiy Nazarov | Ruby Meditation 28
 
Reinventing the wheel - why do it and how to feel good about it - Julik Tarkh...
Reinventing the wheel - why do it and how to feel good about it - Julik Tarkh...Reinventing the wheel - why do it and how to feel good about it - Julik Tarkh...
Reinventing the wheel - why do it and how to feel good about it - Julik Tarkh...
 
Performance Optimization 101 for Ruby developers - Nihad Abbasov (ENG) | Ruby...
Performance Optimization 101 for Ruby developers - Nihad Abbasov (ENG) | Ruby...Performance Optimization 101 for Ruby developers - Nihad Abbasov (ENG) | Ruby...
Performance Optimization 101 for Ruby developers - Nihad Abbasov (ENG) | Ruby...
 
Use cases for Serverless Technologies - Ruslan Tolstov (RUS) | Ruby Meditatio...
Use cases for Serverless Technologies - Ruslan Tolstov (RUS) | Ruby Meditatio...Use cases for Serverless Technologies - Ruslan Tolstov (RUS) | Ruby Meditatio...
Use cases for Serverless Technologies - Ruslan Tolstov (RUS) | Ruby Meditatio...
 
The Trailblazer Ride from the If Jungle into a Civilised Railway Station - Or...
The Trailblazer Ride from the If Jungle into a Civilised Railway Station - Or...The Trailblazer Ride from the If Jungle into a Civilised Railway Station - Or...
The Trailblazer Ride from the If Jungle into a Civilised Railway Station - Or...
 
What/How to do with GraphQL? - Valentyn Ostakh (ENG) | Ruby Meditation 27
What/How to do with GraphQL? - Valentyn Ostakh (ENG) | Ruby Meditation 27What/How to do with GraphQL? - Valentyn Ostakh (ENG) | Ruby Meditation 27
What/How to do with GraphQL? - Valentyn Ostakh (ENG) | Ruby Meditation 27
 
New features in Rails 6 - Nihad Abbasov (RUS) | Ruby Meditation 26
New features in Rails 6 -  Nihad Abbasov (RUS) | Ruby Meditation 26New features in Rails 6 -  Nihad Abbasov (RUS) | Ruby Meditation 26
New features in Rails 6 - Nihad Abbasov (RUS) | Ruby Meditation 26
 
Security Scanning Overview - Tetiana Chupryna (RUS) | Ruby Meditation 26
Security Scanning Overview - Tetiana Chupryna (RUS) | Ruby Meditation 26Security Scanning Overview - Tetiana Chupryna (RUS) | Ruby Meditation 26
Security Scanning Overview - Tetiana Chupryna (RUS) | Ruby Meditation 26
 
Teach your application eloquence. Logs, metrics, traces - Dmytro Shapovalov (...
Teach your application eloquence. Logs, metrics, traces - Dmytro Shapovalov (...Teach your application eloquence. Logs, metrics, traces - Dmytro Shapovalov (...
Teach your application eloquence. Logs, metrics, traces - Dmytro Shapovalov (...
 
Best practices. Exploring - Ike Kurghinyan (RUS) | Ruby Meditation 26
Best practices. Exploring - Ike Kurghinyan (RUS) | Ruby Meditation 26Best practices. Exploring - Ike Kurghinyan (RUS) | Ruby Meditation 26
Best practices. Exploring - Ike Kurghinyan (RUS) | Ruby Meditation 26
 
Road to A/B testing - Alexey Vasiliev (ENG) | Ruby Meditation 25
Road to A/B testing - Alexey Vasiliev (ENG) | Ruby Meditation 25Road to A/B testing - Alexey Vasiliev (ENG) | Ruby Meditation 25
Road to A/B testing - Alexey Vasiliev (ENG) | Ruby Meditation 25
 
Concurrency in production. Real life example - Dmytro Herasymuk | Ruby Medita...
Concurrency in production. Real life example - Dmytro Herasymuk | Ruby Medita...Concurrency in production. Real life example - Dmytro Herasymuk | Ruby Medita...
Concurrency in production. Real life example - Dmytro Herasymuk | Ruby Medita...
 
Data encryption for Ruby web applications - Dmytro Shapovalov (RUS) | Ruby Me...
Data encryption for Ruby web applications - Dmytro Shapovalov (RUS) | Ruby Me...Data encryption for Ruby web applications - Dmytro Shapovalov (RUS) | Ruby Me...
Data encryption for Ruby web applications - Dmytro Shapovalov (RUS) | Ruby Me...
 
Rails App performance at the limit - Bogdan Gusiev
Rails App performance at the limit - Bogdan GusievRails App performance at the limit - Bogdan Gusiev
Rails App performance at the limit - Bogdan Gusiev
 
GDPR. Next Y2K in 2018? - Anton Tkachov | Ruby Meditation #23
GDPR. Next Y2K in 2018? - Anton Tkachov | Ruby Meditation #23GDPR. Next Y2K in 2018? - Anton Tkachov | Ruby Meditation #23
GDPR. Next Y2K in 2018? - Anton Tkachov | Ruby Meditation #23
 

Kürzlich hochgeladen

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Kürzlich hochgeladen (20)

Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 

Ruby approaches in the projection of professional growth - Max Goncharov