SlideShare a Scribd company logo
Effective Architecting
Best Practices & Guidelines for Software Architects
Case Study: Patterns
and Styles in Compilers
Overarching Style
Lexical Analyzer
Parser
(Syntax & Semantic Analysis)
Optimizer
Code generator
Pipe-and-filter
style
Compiler Driver
Facade
pattern
Representing grammar
Interpreter
pattern
Generating code
Source: “Design Patterns: Elements of Reusable Object-Oriented Software”, Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides, Addison-Wesley,1994
Visitor pattern
source: https://github.com/cer/event-sourcing-examples/wiki/i/applicationarchitecture.png
Apply relevant patterns and styles
for effective architecting
“Cities grow, cities evolve, cities
have parts that simply die while other
parts flourish; each city has to be
renewed in order to meet the needs of its
populace… Software-intensive systems
are like that. They grow, they evolve,
sometimes they wither away, and
sometimes they flourish…”
Grady Booch in the foreword for “Refactoring for Software Design Smells: Managing Technical Debt”, Girish Suryanarayana, Ganesh Samarthyam, Tushar Sharma, Morgan Kaufmann/Elsevier, 2014.
CodeCity tool
Code Query Language (NDepend, Architect, …)
Look at the world differently for
creative design solutions
Who coined the
term “code
smell”?
Hint: He also
originated the
terms TDD and XP
Kent Beck
Who coined the
acronym “SOLID”?
(as in SOLID
principles)
Hint: He is the
author of the book
“Working effectively
with legacy code”
Michael
Feathers
S
Single Responsibility
Principle
Every object should have a single responsibility and
that should be encapsulated by the class
O Open Closed Principle
Software should be open for extension, but closed for
modification
L
Liskov’s Substitution
Principle
Any subclass should always be usable instead of its
parent class
I
Interface Segregation
Principle
Many client specific interfaces are better than one
general purpose interface
D
Dependency Inversion
Principle
Abstractions should not depend upon details. Details
should depend upon abstractions
Who coined the
term “technical
debt”?
Hint: He is the
creator of “wiki”
Ward
Cunningham
When,	due	to	constraints,	I	design	
quickly	and	dirty,	my	project	is	
loaded	with	technical	debt
Number	of	Accessed	Variables	
Cyclomatic	Complexity
Newly	Added	Service	
Percentage	of	Newly	Added	Service
Infusion
www.intooitus.com/products/infusion
Violates Single
Responsibility
Principle (SRP)
Published	in	Journal	of	Object	Technology	(Vol.	12,	No.	2,	2013)	
  S	G	Ganesh,	Tushar	Sharma,	Girish	Suryanarayana.		Towards	a	Principle-based	
Classifica4on	of	Structural	Design	Smells.		In	Journal	of	Object	Technology,	vol.	
12,	no.	2,	2013,	pages	1:1–29.doi:10.5381/jot.2013.12.2.a1	
  URL:	hLp://www.jot.fm/issues/issue_2013_06/arPcle1.pdf	(open	access)
"This is a good book about ‘Design Smells’ – actually
a great book – nicely organized - clearly written with
plenty of examples and a fair sprinkling of
anecdotes."
- Will Tracz (Principal Research Scientist & Fellow,
Lockheed Martin)
(review in ACM SIGSOFT Software Engineering
Notes)
Believe in your ideas:
how small or “insignificant” it may
appear to be!
Steve Jobs is viewed as an excellent
speaker, business person, and leader. But
not much as an architect.
He is an excellent architect.
Why?
In the movie Steve Jobs, he gives an example of
a music composer. The composer directs the
people and focuses on the orchestra.
That is the case with a software architect as well.
As an architect, be a problem
solver & technology leader
What is the key to grow big and succeed?
Other
organizations
Your
organization
Gradually expand your circle of influence
Your
departmentYour team
The
world
Some ways to
expand your
circle of influence
Give talks
(conference,
workshop…)
Write articles,
books, white
papers, …
Organize
meet-ups,
training
programs, …
Contribute
to process,
quality, and cost-
saving
initiatives
Meetups
• Software Architecture:
http://www.meetup.com/SoftwareArchitectsBangalore/
• Container Developers:
http://www.meetup.com/Container-Developers-Meetup-Bangalore/
• Software Craftsmanship:
http://www.meetup.com/Software-Craftsmanship-Bangalore-Meetup/
• Core Java:
http://www.meetup.com/Core-Java-Meetup-Bangalore/
• Technical Writers:
http://www.meetup.com/Technical-Writers-Meetup-Bangalore/
• JavaScript:
http://www.meetup.com/JavaScript-Meetup-Bangalore/
Influence is leadership - expand
your influence!
Register here: https://www.townscript.com/e/designpattern
SOLID Principles and Design Patterns Bootcamp
Location: Bangalore
11 JUN 2016: 10:00AM - 6:00 PM
email sgganesh@gmail.com
website www.designsmells.com
twitter @GSamarthyam
linkedin bit.ly/sgganesh
slideshare slideshare.net/sgganesh

More Related Content

What's hot

Structural patterns
Structural patternsStructural patterns
Structural patterns
Himanshu
 
Basics of Software Architecture for .NET Developers
Basics of Software Architecture for .NET DevelopersBasics of Software Architecture for .NET Developers
Basics of Software Architecture for .NET Developers
Dan Douglas
 
Architecture in an Agile World
Architecture in an Agile WorldArchitecture in an Agile World
Architecture in an Agile World
Don McGreal
 
Solid principles, Design Patterns, and Domain Driven Design
Solid principles, Design Patterns, and Domain Driven DesignSolid principles, Design Patterns, and Domain Driven Design
Solid principles, Design Patterns, and Domain Driven Design
Irwansyah Irwansyah
 
Modern Software Architecure Bootcamp - 2nd July 2016 - Bangalore
Modern Software Architecure Bootcamp - 2nd July 2016 - BangaloreModern Software Architecure Bootcamp - 2nd July 2016 - Bangalore
Modern Software Architecure Bootcamp - 2nd July 2016 - Bangalore
Ganesh Samarthyam
 
Java Design Pattern Interview Questions
Java Design Pattern Interview QuestionsJava Design Pattern Interview Questions
Java Design Pattern Interview Questionsjbashask
 
SOLID Principles of Refactoring Presentation - Inland Empire User Group
SOLID Principles of Refactoring Presentation - Inland Empire User GroupSOLID Principles of Refactoring Presentation - Inland Empire User Group
SOLID Principles of Refactoring Presentation - Inland Empire User Group
Adnan Masood
 
UIE Virtual Seminar - From PDFs to HTML Prototyping
UIE Virtual Seminar - From PDFs to HTML PrototypingUIE Virtual Seminar - From PDFs to HTML Prototyping
UIE Virtual Seminar - From PDFs to HTML PrototypingUIEpreviews
 
A UML profile for OData Web APIs
A UML profile for OData Web APIsA UML profile for OData Web APIs
A UML profile for OData Web APIs
Jordi Cabot
 
Solid principles of oo design
Solid principles of oo designSolid principles of oo design
Solid principles of oo design
Confiz
 
The Smells Of Bad Design
The Smells Of Bad DesignThe Smells Of Bad Design
The Smells Of Bad Designguest446c0
 
Design Pattern lecture 2
Design Pattern lecture 2Design Pattern lecture 2
Design Pattern lecture 2
Julie Iskander
 

What's hot (13)

Structural patterns
Structural patternsStructural patterns
Structural patterns
 
Basics of Software Architecture for .NET Developers
Basics of Software Architecture for .NET DevelopersBasics of Software Architecture for .NET Developers
Basics of Software Architecture for .NET Developers
 
Architecture in an Agile World
Architecture in an Agile WorldArchitecture in an Agile World
Architecture in an Agile World
 
Solid principles, Design Patterns, and Domain Driven Design
Solid principles, Design Patterns, and Domain Driven DesignSolid principles, Design Patterns, and Domain Driven Design
Solid principles, Design Patterns, and Domain Driven Design
 
Modern Software Architecure Bootcamp - 2nd July 2016 - Bangalore
Modern Software Architecure Bootcamp - 2nd July 2016 - BangaloreModern Software Architecure Bootcamp - 2nd July 2016 - Bangalore
Modern Software Architecure Bootcamp - 2nd July 2016 - Bangalore
 
Java Design Pattern Interview Questions
Java Design Pattern Interview QuestionsJava Design Pattern Interview Questions
Java Design Pattern Interview Questions
 
SOLID Principles of Refactoring Presentation - Inland Empire User Group
SOLID Principles of Refactoring Presentation - Inland Empire User GroupSOLID Principles of Refactoring Presentation - Inland Empire User Group
SOLID Principles of Refactoring Presentation - Inland Empire User Group
 
Domain Driven Design
Domain Driven DesignDomain Driven Design
Domain Driven Design
 
UIE Virtual Seminar - From PDFs to HTML Prototyping
UIE Virtual Seminar - From PDFs to HTML PrototypingUIE Virtual Seminar - From PDFs to HTML Prototyping
UIE Virtual Seminar - From PDFs to HTML Prototyping
 
A UML profile for OData Web APIs
A UML profile for OData Web APIsA UML profile for OData Web APIs
A UML profile for OData Web APIs
 
Solid principles of oo design
Solid principles of oo designSolid principles of oo design
Solid principles of oo design
 
The Smells Of Bad Design
The Smells Of Bad DesignThe Smells Of Bad Design
The Smells Of Bad Design
 
Design Pattern lecture 2
Design Pattern lecture 2Design Pattern lecture 2
Design Pattern lecture 2
 

Viewers also liked

AWS Webcast - Discover Disaster Recovery Solutions in the Cloud
AWS Webcast - Discover Disaster Recovery Solutions in the CloudAWS Webcast - Discover Disaster Recovery Solutions in the Cloud
AWS Webcast - Discover Disaster Recovery Solutions in the Cloud
Amazon Web Services
 
VMworld 2013: Architecting VMware Horizon Workspace for Scale and Performance
VMworld 2013: Architecting VMware Horizon Workspace for Scale and PerformanceVMworld 2013: Architecting VMware Horizon Workspace for Scale and Performance
VMworld 2013: Architecting VMware Horizon Workspace for Scale and Performance
VMworld
 
Magazine Cover and Film Poster Feedback
Magazine Cover and Film Poster FeedbackMagazine Cover and Film Poster Feedback
Magazine Cover and Film Poster Feedback
jessicareid123
 
Question 3
Question 3Question 3
Question 3
teasticks
 
Juego modificado e.f.
Juego modificado e.f.Juego modificado e.f.
Juego modificado e.f.
Lidio Avena
 
Reflexion del curso conocimiento de la entidad
Reflexion del curso conocimiento de la entidadReflexion del curso conocimiento de la entidad
Reflexion del curso conocimiento de la entidad
Lidio Avena
 
FACE at-a-glance 2014
FACE at-a-glance 2014FACE at-a-glance 2014
FACE at-a-glance 2014URGENT, Inc.
 
coal rods extruder machine
coal rods extruder machinecoal rods extruder machine
coal rods extruder machinemonica199307
 
excel
excelexcel
aplikom_UNSRI_2_vidya fertika sari
aplikom_UNSRI_2_vidya fertika sariaplikom_UNSRI_2_vidya fertika sari
aplikom_UNSRI_2_vidya fertika sari
Vidya Fertika
 
Trident Resourcing Ltd
Trident Resourcing LtdTrident Resourcing Ltd
Trident Resourcing LtdGemma Maloney
 
Glomacs Supervisory Skills Certificate
Glomacs Supervisory Skills CertificateGlomacs Supervisory Skills Certificate
Glomacs Supervisory Skills CertificateAlexander Morcillo Jr.
 
Analysis of Households income Generation in Fadama IIIBeneficiary Communities...
Analysis of Households income Generation in Fadama IIIBeneficiary Communities...Analysis of Households income Generation in Fadama IIIBeneficiary Communities...
Analysis of Households income Generation in Fadama IIIBeneficiary Communities...
iosrjce
 
Data Center Planning for Maximum Uptime: Production and Disaster Recovery Sites
Data Center Planning for Maximum Uptime: Production and Disaster Recovery SitesData Center Planning for Maximum Uptime: Production and Disaster Recovery Sites
Data Center Planning for Maximum Uptime: Production and Disaster Recovery SitesVISIHOSTING
 
Al andalus belen-parte i
Al andalus belen-parte iAl andalus belen-parte i
Al andalus belen-parte i
belen_plazas
 
Small Capacity Biomass Firewood Pellet Production Line For Making Fuel Pellet
Small Capacity Biomass Firewood Pellet Production Line For Making Fuel Pellet Small Capacity Biomass Firewood Pellet Production Line For Making Fuel Pellet
Small Capacity Biomass Firewood Pellet Production Line For Making Fuel Pellet
yuongjixie
 
AWS Cloud Disaster Recovery Plan Checklist - Are you ready?
AWS Cloud Disaster Recovery Plan Checklist - Are you ready?AWS Cloud Disaster Recovery Plan Checklist - Are you ready?
AWS Cloud Disaster Recovery Plan Checklist - Are you ready?
CloudEndure
 
Disaster Recovery Solutions
Disaster Recovery SolutionsDisaster Recovery Solutions
Disaster Recovery Solutions
Manuel Daza
 

Viewers also liked (20)

AWS Webcast - Discover Disaster Recovery Solutions in the Cloud
AWS Webcast - Discover Disaster Recovery Solutions in the CloudAWS Webcast - Discover Disaster Recovery Solutions in the Cloud
AWS Webcast - Discover Disaster Recovery Solutions in the Cloud
 
VMworld 2013: Architecting VMware Horizon Workspace for Scale and Performance
VMworld 2013: Architecting VMware Horizon Workspace for Scale and PerformanceVMworld 2013: Architecting VMware Horizon Workspace for Scale and Performance
VMworld 2013: Architecting VMware Horizon Workspace for Scale and Performance
 
Magazine Cover and Film Poster Feedback
Magazine Cover and Film Poster FeedbackMagazine Cover and Film Poster Feedback
Magazine Cover and Film Poster Feedback
 
Question 3
Question 3Question 3
Question 3
 
Juego modificado e.f.
Juego modificado e.f.Juego modificado e.f.
Juego modificado e.f.
 
Reflexion del curso conocimiento de la entidad
Reflexion del curso conocimiento de la entidadReflexion del curso conocimiento de la entidad
Reflexion del curso conocimiento de la entidad
 
FACE at-a-glance 2014
FACE at-a-glance 2014FACE at-a-glance 2014
FACE at-a-glance 2014
 
coal rods extruder machine
coal rods extruder machinecoal rods extruder machine
coal rods extruder machine
 
excel
excelexcel
excel
 
aplikom_UNSRI_2_vidya fertika sari
aplikom_UNSRI_2_vidya fertika sariaplikom_UNSRI_2_vidya fertika sari
aplikom_UNSRI_2_vidya fertika sari
 
DDB-chic-Pink-Paper
DDB-chic-Pink-PaperDDB-chic-Pink-Paper
DDB-chic-Pink-Paper
 
Trident Resourcing Ltd
Trident Resourcing LtdTrident Resourcing Ltd
Trident Resourcing Ltd
 
Glomacs Supervisory Skills Certificate
Glomacs Supervisory Skills CertificateGlomacs Supervisory Skills Certificate
Glomacs Supervisory Skills Certificate
 
Analysis of Households income Generation in Fadama IIIBeneficiary Communities...
Analysis of Households income Generation in Fadama IIIBeneficiary Communities...Analysis of Households income Generation in Fadama IIIBeneficiary Communities...
Analysis of Households income Generation in Fadama IIIBeneficiary Communities...
 
Data Center Planning for Maximum Uptime: Production and Disaster Recovery Sites
Data Center Planning for Maximum Uptime: Production and Disaster Recovery SitesData Center Planning for Maximum Uptime: Production and Disaster Recovery Sites
Data Center Planning for Maximum Uptime: Production and Disaster Recovery Sites
 
Shin-Etsu supervisory training
Shin-Etsu supervisory trainingShin-Etsu supervisory training
Shin-Etsu supervisory training
 
Al andalus belen-parte i
Al andalus belen-parte iAl andalus belen-parte i
Al andalus belen-parte i
 
Small Capacity Biomass Firewood Pellet Production Line For Making Fuel Pellet
Small Capacity Biomass Firewood Pellet Production Line For Making Fuel Pellet Small Capacity Biomass Firewood Pellet Production Line For Making Fuel Pellet
Small Capacity Biomass Firewood Pellet Production Line For Making Fuel Pellet
 
AWS Cloud Disaster Recovery Plan Checklist - Are you ready?
AWS Cloud Disaster Recovery Plan Checklist - Are you ready?AWS Cloud Disaster Recovery Plan Checklist - Are you ready?
AWS Cloud Disaster Recovery Plan Checklist - Are you ready?
 
Disaster Recovery Solutions
Disaster Recovery SolutionsDisaster Recovery Solutions
Disaster Recovery Solutions
 

Similar to Effective Architecting: Best Practices for Software Architects

User Centered Design Patterns and Related Issues – A Review
User Centered Design Patterns and Related Issues – A ReviewUser Centered Design Patterns and Related Issues – A Review
User Centered Design Patterns and Related Issues – A Review
Waqas Tariq
 
Refactoring for Software Design Smells Book - A Visual Overview
Refactoring for Software Design Smells Book - A Visual OverviewRefactoring for Software Design Smells Book - A Visual Overview
Refactoring for Software Design Smells Book - A Visual Overview
Ganesh Samarthyam
 
SOLID Principles and Design Patterns
SOLID Principles and Design PatternsSOLID Principles and Design Patterns
SOLID Principles and Design Patterns
Ganesh Samarthyam
 
Refactoring for Software Architecture Smells - International Workshop on Refa...
Refactoring for Software Architecture Smells - International Workshop on Refa...Refactoring for Software Architecture Smells - International Workshop on Refa...
Refactoring for Software Architecture Smells - International Workshop on Refa...
Ganesh Samarthyam
 
Generation of Automatic Code using Design Patterns
Generation of Automatic Code using Design PatternsGeneration of Automatic Code using Design Patterns
Generation of Automatic Code using Design Patterns
IRJET Journal
 
Refactoring guided by design principles driven by technical debt
Refactoring   guided by design principles driven by technical debtRefactoring   guided by design principles driven by technical debt
Refactoring guided by design principles driven by technical debt
Ganesh Samarthyam
 
Modern Agile Software Architecture
Modern Agile Software ArchitectureModern Agile Software Architecture
Modern Agile Software Architecture
Kannan Durairaj
 
Modest Formalization of Software Design Patterns
Modest Formalization of Software Design PatternsModest Formalization of Software Design Patterns
Modest Formalization of Software Design Patterns
International Journal of Latest Research in Engineering and Technology
 
AudrisMockus_MSR22.pdf
AudrisMockus_MSR22.pdfAudrisMockus_MSR22.pdf
AudrisMockus_MSR22.pdf
TapajitDey1
 
Software Modernization
Software ModernizationSoftware Modernization
Software Modernization
Javier Canovas
 
Refactoring for Software Design Smells
Refactoring for Software Design SmellsRefactoring for Software Design Smells
Refactoring for Software Design Smells
Ganesh Samarthyam
 
The Benefits Of Software Creation
The Benefits Of Software CreationThe Benefits Of Software Creation
The Benefits Of Software Creation
Jennifer Wood
 
.Net design pattern
.Net design pattern.Net design pattern
.Net design pattern
Mohamed Zakarya Abdelgawad
 
H1803044651
H1803044651H1803044651
H1803044651
IOSR Journals
 
Creating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your SystemCreating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your System
Giovanni Asproni
 
Introduction to Design Patterns
Introduction to Design PatternsIntroduction to Design Patterns
Introduction to Design Patterns
Kasun Ranga Wijeweera
 
The Changing Role of Software Architecting in the Digital Age
The Changing Role of Software Architecting in the Digital Age The Changing Role of Software Architecting in the Digital Age
The Changing Role of Software Architecting in the Digital Age
Uwe Zdun
 
Agile Architecture: Ideals, History, and a New Hope
Agile Architecture: Ideals, History, and a New HopeAgile Architecture: Ideals, History, and a New Hope
Agile Architecture: Ideals, History, and a New Hope
Gary Pedretti
 
020523+the+programmers+apprentice.ppt
020523+the+programmers+apprentice.ppt020523+the+programmers+apprentice.ppt
020523+the+programmers+apprentice.ppt
Yann-Gaël Guéhéneuc
 
Design systems - Razvan Rosu
Design systems - Razvan RosuDesign systems - Razvan Rosu
Design systems - Razvan Rosu
Razvan Rosu
 

Similar to Effective Architecting: Best Practices for Software Architects (20)

User Centered Design Patterns and Related Issues – A Review
User Centered Design Patterns and Related Issues – A ReviewUser Centered Design Patterns and Related Issues – A Review
User Centered Design Patterns and Related Issues – A Review
 
Refactoring for Software Design Smells Book - A Visual Overview
Refactoring for Software Design Smells Book - A Visual OverviewRefactoring for Software Design Smells Book - A Visual Overview
Refactoring for Software Design Smells Book - A Visual Overview
 
SOLID Principles and Design Patterns
SOLID Principles and Design PatternsSOLID Principles and Design Patterns
SOLID Principles and Design Patterns
 
Refactoring for Software Architecture Smells - International Workshop on Refa...
Refactoring for Software Architecture Smells - International Workshop on Refa...Refactoring for Software Architecture Smells - International Workshop on Refa...
Refactoring for Software Architecture Smells - International Workshop on Refa...
 
Generation of Automatic Code using Design Patterns
Generation of Automatic Code using Design PatternsGeneration of Automatic Code using Design Patterns
Generation of Automatic Code using Design Patterns
 
Refactoring guided by design principles driven by technical debt
Refactoring   guided by design principles driven by technical debtRefactoring   guided by design principles driven by technical debt
Refactoring guided by design principles driven by technical debt
 
Modern Agile Software Architecture
Modern Agile Software ArchitectureModern Agile Software Architecture
Modern Agile Software Architecture
 
Modest Formalization of Software Design Patterns
Modest Formalization of Software Design PatternsModest Formalization of Software Design Patterns
Modest Formalization of Software Design Patterns
 
AudrisMockus_MSR22.pdf
AudrisMockus_MSR22.pdfAudrisMockus_MSR22.pdf
AudrisMockus_MSR22.pdf
 
Software Modernization
Software ModernizationSoftware Modernization
Software Modernization
 
Refactoring for Software Design Smells
Refactoring for Software Design SmellsRefactoring for Software Design Smells
Refactoring for Software Design Smells
 
The Benefits Of Software Creation
The Benefits Of Software CreationThe Benefits Of Software Creation
The Benefits Of Software Creation
 
.Net design pattern
.Net design pattern.Net design pattern
.Net design pattern
 
H1803044651
H1803044651H1803044651
H1803044651
 
Creating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your SystemCreating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your System
 
Introduction to Design Patterns
Introduction to Design PatternsIntroduction to Design Patterns
Introduction to Design Patterns
 
The Changing Role of Software Architecting in the Digital Age
The Changing Role of Software Architecting in the Digital Age The Changing Role of Software Architecting in the Digital Age
The Changing Role of Software Architecting in the Digital Age
 
Agile Architecture: Ideals, History, and a New Hope
Agile Architecture: Ideals, History, and a New HopeAgile Architecture: Ideals, History, and a New Hope
Agile Architecture: Ideals, History, and a New Hope
 
020523+the+programmers+apprentice.ppt
020523+the+programmers+apprentice.ppt020523+the+programmers+apprentice.ppt
020523+the+programmers+apprentice.ppt
 
Design systems - Razvan Rosu
Design systems - Razvan RosuDesign systems - Razvan Rosu
Design systems - Razvan Rosu
 

More from Ganesh Samarthyam

Wonders of the Sea
Wonders of the SeaWonders of the Sea
Wonders of the Sea
Ganesh Samarthyam
 
Animals - for kids
Animals - for kids Animals - for kids
Animals - for kids
Ganesh Samarthyam
 
Applying Refactoring Tools in Practice
Applying Refactoring Tools in PracticeApplying Refactoring Tools in Practice
Applying Refactoring Tools in Practice
Ganesh Samarthyam
 
CFP - 1st Workshop on “AI Meets Blockchain”
CFP - 1st Workshop on “AI Meets Blockchain”CFP - 1st Workshop on “AI Meets Blockchain”
CFP - 1st Workshop on “AI Meets Blockchain”
Ganesh Samarthyam
 
Great Coding Skills Aren't Enough
Great Coding Skills Aren't EnoughGreat Coding Skills Aren't Enough
Great Coding Skills Aren't Enough
Ganesh Samarthyam
 
College Project - Java Disassembler - Description
College Project - Java Disassembler - DescriptionCollege Project - Java Disassembler - Description
College Project - Java Disassembler - Description
Ganesh Samarthyam
 
Coding Guidelines - Crafting Clean Code
Coding Guidelines - Crafting Clean CodeCoding Guidelines - Crafting Clean Code
Coding Guidelines - Crafting Clean Code
Ganesh Samarthyam
 
Design Patterns - Compiler Case Study - Hands-on Examples
Design Patterns - Compiler Case Study - Hands-on ExamplesDesign Patterns - Compiler Case Study - Hands-on Examples
Design Patterns - Compiler Case Study - Hands-on Examples
Ganesh Samarthyam
 
Bangalore Container Conference 2017 - Brief Presentation
Bangalore Container Conference 2017 - Brief PresentationBangalore Container Conference 2017 - Brief Presentation
Bangalore Container Conference 2017 - Brief Presentation
Ganesh Samarthyam
 
Bangalore Container Conference 2017 - Poster
Bangalore Container Conference 2017 - PosterBangalore Container Conference 2017 - Poster
Bangalore Container Conference 2017 - Poster
Ganesh Samarthyam
 
Software Design in Practice (with Java examples)
Software Design in Practice (with Java examples)Software Design in Practice (with Java examples)
Software Design in Practice (with Java examples)
Ganesh Samarthyam
 
OO Design and Design Patterns in C++
OO Design and Design Patterns in C++ OO Design and Design Patterns in C++
OO Design and Design Patterns in C++
Ganesh Samarthyam
 
Bangalore Container Conference 2017 - Sponsorship Deck
Bangalore Container Conference 2017 - Sponsorship DeckBangalore Container Conference 2017 - Sponsorship Deck
Bangalore Container Conference 2017 - Sponsorship Deck
Ganesh Samarthyam
 
Let's Go: Introduction to Google's Go Programming Language
Let's Go: Introduction to Google's Go Programming LanguageLet's Go: Introduction to Google's Go Programming Language
Let's Go: Introduction to Google's Go Programming Language
Ganesh Samarthyam
 
Google's Go Programming Language - Introduction
Google's Go Programming Language - Introduction Google's Go Programming Language - Introduction
Google's Go Programming Language - Introduction
Ganesh Samarthyam
 
Java Generics - Quiz Questions
Java Generics - Quiz QuestionsJava Generics - Quiz Questions
Java Generics - Quiz Questions
Ganesh Samarthyam
 
Java Generics - by Example
Java Generics - by ExampleJava Generics - by Example
Java Generics - by Example
Ganesh Samarthyam
 
Software Architecture - Quiz Questions
Software Architecture - Quiz QuestionsSoftware Architecture - Quiz Questions
Software Architecture - Quiz Questions
Ganesh Samarthyam
 
Docker by Example - Quiz
Docker by Example - QuizDocker by Example - Quiz
Docker by Example - Quiz
Ganesh Samarthyam
 
Core Java: Best practices and bytecodes quiz
Core Java: Best practices and bytecodes quizCore Java: Best practices and bytecodes quiz
Core Java: Best practices and bytecodes quiz
Ganesh Samarthyam
 

More from Ganesh Samarthyam (20)

Wonders of the Sea
Wonders of the SeaWonders of the Sea
Wonders of the Sea
 
Animals - for kids
Animals - for kids Animals - for kids
Animals - for kids
 
Applying Refactoring Tools in Practice
Applying Refactoring Tools in PracticeApplying Refactoring Tools in Practice
Applying Refactoring Tools in Practice
 
CFP - 1st Workshop on “AI Meets Blockchain”
CFP - 1st Workshop on “AI Meets Blockchain”CFP - 1st Workshop on “AI Meets Blockchain”
CFP - 1st Workshop on “AI Meets Blockchain”
 
Great Coding Skills Aren't Enough
Great Coding Skills Aren't EnoughGreat Coding Skills Aren't Enough
Great Coding Skills Aren't Enough
 
College Project - Java Disassembler - Description
College Project - Java Disassembler - DescriptionCollege Project - Java Disassembler - Description
College Project - Java Disassembler - Description
 
Coding Guidelines - Crafting Clean Code
Coding Guidelines - Crafting Clean CodeCoding Guidelines - Crafting Clean Code
Coding Guidelines - Crafting Clean Code
 
Design Patterns - Compiler Case Study - Hands-on Examples
Design Patterns - Compiler Case Study - Hands-on ExamplesDesign Patterns - Compiler Case Study - Hands-on Examples
Design Patterns - Compiler Case Study - Hands-on Examples
 
Bangalore Container Conference 2017 - Brief Presentation
Bangalore Container Conference 2017 - Brief PresentationBangalore Container Conference 2017 - Brief Presentation
Bangalore Container Conference 2017 - Brief Presentation
 
Bangalore Container Conference 2017 - Poster
Bangalore Container Conference 2017 - PosterBangalore Container Conference 2017 - Poster
Bangalore Container Conference 2017 - Poster
 
Software Design in Practice (with Java examples)
Software Design in Practice (with Java examples)Software Design in Practice (with Java examples)
Software Design in Practice (with Java examples)
 
OO Design and Design Patterns in C++
OO Design and Design Patterns in C++ OO Design and Design Patterns in C++
OO Design and Design Patterns in C++
 
Bangalore Container Conference 2017 - Sponsorship Deck
Bangalore Container Conference 2017 - Sponsorship DeckBangalore Container Conference 2017 - Sponsorship Deck
Bangalore Container Conference 2017 - Sponsorship Deck
 
Let's Go: Introduction to Google's Go Programming Language
Let's Go: Introduction to Google's Go Programming LanguageLet's Go: Introduction to Google's Go Programming Language
Let's Go: Introduction to Google's Go Programming Language
 
Google's Go Programming Language - Introduction
Google's Go Programming Language - Introduction Google's Go Programming Language - Introduction
Google's Go Programming Language - Introduction
 
Java Generics - Quiz Questions
Java Generics - Quiz QuestionsJava Generics - Quiz Questions
Java Generics - Quiz Questions
 
Java Generics - by Example
Java Generics - by ExampleJava Generics - by Example
Java Generics - by Example
 
Software Architecture - Quiz Questions
Software Architecture - Quiz QuestionsSoftware Architecture - Quiz Questions
Software Architecture - Quiz Questions
 
Docker by Example - Quiz
Docker by Example - QuizDocker by Example - Quiz
Docker by Example - Quiz
 
Core Java: Best practices and bytecodes quiz
Core Java: Best practices and bytecodes quizCore Java: Best practices and bytecodes quiz
Core Java: Best practices and bytecodes quiz
 

Recently uploaded

top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
vrstrong314
 
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
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Globus
 
A Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdfA Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdf
kalichargn70th171
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
Georgi Kodinov
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns
 
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Anthony Dahanne
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
Globus
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
Philip Schwarz
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
informapgpstrackings
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
WSO2
 
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
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
Ortus Solutions, Corp
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
AMB-Review
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
Ortus Solutions, Corp
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Mind IT Systems
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
wottaspaceseo
 
RISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent EnterpriseRISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent Enterprise
Srikant77
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Globus
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 

Recently uploaded (20)

top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
 
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
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
 
A Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdfA Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdf
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
 
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
 
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
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
 
RISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent EnterpriseRISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent Enterprise
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 

Effective Architecting: Best Practices for Software Architects