SlideShare une entreprise Scribd logo
1  sur  21
©2010 Improving Enterprises, Inc. 
Good Code 
What, Why, and How to Get There 
Dallas TechFest 2014 
Jane Prusakova 
Josh Rizzo 
@Improving Enterprises College Station
©2010 Improving Enterprises, Inc. 
What is “good”? 
Functional 
Bug-free 
Performant 
Good design 
Tested 
Testable 
Easy to change
©2010 Improving Enterprises, Inc. 
Usability 
Users and clients Developers
©2010 Improving Enterprises, Inc.
“Programs must be written for 
people to read, and only 
incidentally for machines to 
execute.” 
– Abelson and Sussman 
©2010 Improving Enterprises, Inc.
©2010 Improving Enterprises, Inc. 
Readability has value 
NOW 
Code is an asset 
affects productivity 
monetary value
Readability has value 
OVER TIME 
Software evolves over time 
Work by many different teams 
Changes affect value
©2010 Improving Enterprises, Inc. 
Readability has cost 
More hard work 
More time 
More training
©2010 Improving Enterprises, Inc. 
Readable code
©2010 Improving Enterprises, Inc. 
Who is responsible? 
It was hard to write 
It should be hard to 
read
Lets make code more… 
See: https://github.com/joshrizzo/Readability 
©2010 Improving Enterprises, Inc.
©2010 Improving Enterprises, Inc. 
Visible code 
Short and concise 
Spacing and indent matter 
“If we wish to count lines of code, we should 
not regard them as ‘lines produced’ but as 
‘lines spent.’” 
– Edsger Dijkstra
©2010 Improving Enterprises, Inc. 
Code with a narrative 
Use naming to show intent 
Interface design 
“Programming can be fun, so can 
cryptography; however they should not be 
combined.” 
– Kreitzberg and Shneiderman
©2010 Improving Enterprises, Inc. 
Easy to read 
Cohesive level of abstraction 
“The purpose of abstraction is not to be 
vague, but to create a new semantic level in 
which one can be absolutely precise.” 
– Edsger Dijkstra
©2010 Improving Enterprises, Inc. 
Readable++ 
Simplicity
“Everything should be made 
as simple as possible, but not 
simpler.” 
©2010 Improving Enterprises, Inc. 
– Albert Einstein
©2010 Improving Enterprises, Inc. 
Simple vs Fast 
Correctness more important than speed 
Simple code is more likely to be and stay 
correct 
Modularize code w/ performance concerns 
Optimize locally
©2010 Improving Enterprises, Inc.
©2010 Improving Enterprises, Inc. 
Simple vs Flexible 
Re-use is rare 
Predictions of re-use are poor 
Raises complexity significantly 
Unused => not working
©2010 Improving Enterprises, Inc. 
Simple vs Clever 
Over engineering 
Mixing abstractions 
Inappropriate patterns 
Complicated syntax
©2010 Improving Enterprises, Inc. 
Good Code 
What, Why, and How to Get There 
https://github.com/joshrizzo/Readability 
Dallas TechFest 2014 
Jane Prusakova 
Josh Rizzo 
@Improving Enterprises College Station

Contenu connexe

En vedette

Privacy In The Digital Age
Privacy In The Digital AgePrivacy In The Digital Age
Privacy In The Digital AgeJane Prusakova
 
Interview: a Learning Conversation
Interview: a Learning ConversationInterview: a Learning Conversation
Interview: a Learning ConversationJane Prusakova
 
Privacy in the digital media age
Privacy in the digital media agePrivacy in the digital media age
Privacy in the digital media agegperone
 
Agile Agile: Adapting Practices to Support Explosive Growth by Ben Foster
Agile Agile: Adapting Practices to Support Explosive Growth by Ben FosterAgile Agile: Adapting Practices to Support Explosive Growth by Ben Foster
Agile Agile: Adapting Practices to Support Explosive Growth by Ben FosterLitheSpeed
 
Building great teams: the power of a nudge.
Building great teams: the power of a nudge.  Building great teams: the power of a nudge.
Building great teams: the power of a nudge. Jane Prusakova
 
Guide to Human Activity System (HAS) Mapping
Guide to Human Activity System (HAS) MappingGuide to Human Activity System (HAS) Mapping
Guide to Human Activity System (HAS) MappingDavid Alman
 
Ewan developing the agile mindset for organizational agility
Ewan   developing the agile mindset for organizational agilityEwan   developing the agile mindset for organizational agility
Ewan developing the agile mindset for organizational agilityMagneta AI
 
вольфсон построение собственного Agile-фреймворка (шаблон)
вольфсон   построение собственного Agile-фреймворка (шаблон)вольфсон   построение собственного Agile-фреймворка (шаблон)
вольфсон построение собственного Agile-фреймворка (шаблон)Magneta AI
 
Nguyen Vu Hung: Beyond Agile - Practices and Mindset - Agile Tour Vietnam (Ha...
Nguyen Vu Hung: Beyond Agile - Practices and Mindset - Agile Tour Vietnam (Ha...Nguyen Vu Hung: Beyond Agile - Practices and Mindset - Agile Tour Vietnam (Ha...
Nguyen Vu Hung: Beyond Agile - Practices and Mindset - Agile Tour Vietnam (Ha...Vu Hung Nguyen
 

En vedette (11)

Privacy In The Digital Age
Privacy In The Digital AgePrivacy In The Digital Age
Privacy In The Digital Age
 
Interview: a Learning Conversation
Interview: a Learning ConversationInterview: a Learning Conversation
Interview: a Learning Conversation
 
Privacy in the digital media age
Privacy in the digital media agePrivacy in the digital media age
Privacy in the digital media age
 
Agile Agile: Adapting Practices to Support Explosive Growth by Ben Foster
Agile Agile: Adapting Practices to Support Explosive Growth by Ben FosterAgile Agile: Adapting Practices to Support Explosive Growth by Ben Foster
Agile Agile: Adapting Practices to Support Explosive Growth by Ben Foster
 
Building great teams: the power of a nudge.
Building great teams: the power of a nudge.  Building great teams: the power of a nudge.
Building great teams: the power of a nudge.
 
Guide to Human Activity System (HAS) Mapping
Guide to Human Activity System (HAS) MappingGuide to Human Activity System (HAS) Mapping
Guide to Human Activity System (HAS) Mapping
 
Perfect Code
Perfect CodePerfect Code
Perfect Code
 
Ewan developing the agile mindset for organizational agility
Ewan   developing the agile mindset for organizational agilityEwan   developing the agile mindset for organizational agility
Ewan developing the agile mindset for organizational agility
 
вольфсон построение собственного Agile-фреймворка (шаблон)
вольфсон   построение собственного Agile-фреймворка (шаблон)вольфсон   построение собственного Agile-фреймворка (шаблон)
вольфсон построение собственного Agile-фреймворка (шаблон)
 
Nguyen Vu Hung: Beyond Agile - Practices and Mindset - Agile Tour Vietnam (Ha...
Nguyen Vu Hung: Beyond Agile - Practices and Mindset - Agile Tour Vietnam (Ha...Nguyen Vu Hung: Beyond Agile - Practices and Mindset - Agile Tour Vietnam (Ha...
Nguyen Vu Hung: Beyond Agile - Practices and Mindset - Agile Tour Vietnam (Ha...
 
Privacy in the Digital Age
Privacy in the Digital AgePrivacy in the Digital Age
Privacy in the Digital Age
 

Similaire à Getting to Good Code: Readability, Simplicity and Design

Application Logging for fun and profit. Houston TechFest 2012
Application Logging for fun and profit.  Houston TechFest 2012Application Logging for fun and profit.  Houston TechFest 2012
Application Logging for fun and profit. Houston TechFest 2012Jane Prusakova
 
Fast, Secured and Safe Online Prescribing Tool in iOS and ANDROID
Fast, Secured and Safe Online Prescribing Tool in iOS and ANDROIDFast, Secured and Safe Online Prescribing Tool in iOS and ANDROID
Fast, Secured and Safe Online Prescribing Tool in iOS and ANDROIDKalpen Shah
 
Ijpie- From buying one PC to owning multiple super computers.
Ijpie- From buying one PC to owning multiple super computers.Ijpie- From buying one PC to owning multiple super computers.
Ijpie- From buying one PC to owning multiple super computers.rahul karn
 
Building a great team: power of a nudge.
Building a great team: power of a nudge.Building a great team: power of a nudge.
Building a great team: power of a nudge.Jane Prusakova
 
Steeltoe and the Open Source .NET Renaissance
Steeltoe and the Open Source .NET RenaissanceSteeltoe and the Open Source .NET Renaissance
Steeltoe and the Open Source .NET RenaissanceVMware Tanzu
 
Dev talks Cluj 2018 : Java in the 21 Century: Are you thinking far enough ahead?
Dev talks Cluj 2018 : Java in the 21 Century: Are you thinking far enough ahead?Dev talks Cluj 2018 : Java in the 21 Century: Are you thinking far enough ahead?
Dev talks Cluj 2018 : Java in the 21 Century: Are you thinking far enough ahead?Steve Poole
 
Transform Your Business with Our Custom iOS App Development Services.pdf
Transform Your Business with Our Custom iOS App Development Services.pdfTransform Your Business with Our Custom iOS App Development Services.pdf
Transform Your Business with Our Custom iOS App Development Services.pdfSeasia Infotech
 
ASCII Austin Keynote by Intel SMB MSP Marketing Director, Eric Townsend keyno...
ASCII Austin Keynote by Intel SMB MSP Marketing Director, Eric Townsend keyno...ASCII Austin Keynote by Intel SMB MSP Marketing Director, Eric Townsend keyno...
ASCII Austin Keynote by Intel SMB MSP Marketing Director, Eric Townsend keyno...IntelMSP
 
Ways to Hire iOS Programmer for Your Company in 2023.pptx
Ways to Hire iOS Programmer for Your Company in 2023.pptxWays to Hire iOS Programmer for Your Company in 2023.pptx
Ways to Hire iOS Programmer for Your Company in 2023.pptxSemaphoreSoftware1
 
FMDlite app to support Falsified Medicines Directive in UK
FMDlite app to support Falsified Medicines Directive in UKFMDlite app to support Falsified Medicines Directive in UK
FMDlite app to support Falsified Medicines Directive in UKKalpen Shah
 
Vesterli worst adf_project_ever_wildcard_2013
Vesterli worst adf_project_ever_wildcard_2013Vesterli worst adf_project_ever_wildcard_2013
Vesterli worst adf_project_ever_wildcard_2013Andrejs Vorobjovs
 
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...Coveros, Inc.
 
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...Sauce Labs
 
Accenture and OpenStack
Accenture and OpenStackAccenture and OpenStack
Accenture and OpenStackOpen Stack
 
Architecture in an Agile World
Architecture in an Agile World Architecture in an Agile World
Architecture in an Agile World Synerzip
 
DevOps in Practice: When does "Practice" Become "Doing"?
DevOps in Practice: When does "Practice" Become "Doing"?DevOps in Practice: When does "Practice" Become "Doing"?
DevOps in Practice: When does "Practice" Become "Doing"?Michael Elder
 
The Path to Business Agility for Vodafone: How Amazon made us "boring" - Sess...
The Path to Business Agility for Vodafone: How Amazon made us "boring" - Sess...The Path to Business Agility for Vodafone: How Amazon made us "boring" - Sess...
The Path to Business Agility for Vodafone: How Amazon made us "boring" - Sess...Amazon Web Services
 
Continuous Integration and Continuous Deployment
Continuous Integration and Continuous DeploymentContinuous Integration and Continuous Deployment
Continuous Integration and Continuous DeploymentKalpen Shah
 

Similaire à Getting to Good Code: Readability, Simplicity and Design (20)

Application Logging for fun and profit. Houston TechFest 2012
Application Logging for fun and profit.  Houston TechFest 2012Application Logging for fun and profit.  Houston TechFest 2012
Application Logging for fun and profit. Houston TechFest 2012
 
Fast, Secured and Safe Online Prescribing Tool in iOS and ANDROID
Fast, Secured and Safe Online Prescribing Tool in iOS and ANDROIDFast, Secured and Safe Online Prescribing Tool in iOS and ANDROID
Fast, Secured and Safe Online Prescribing Tool in iOS and ANDROID
 
Ijpie- From buying one PC to owning multiple super computers.
Ijpie- From buying one PC to owning multiple super computers.Ijpie- From buying one PC to owning multiple super computers.
Ijpie- From buying one PC to owning multiple super computers.
 
Building a great team: power of a nudge.
Building a great team: power of a nudge.Building a great team: power of a nudge.
Building a great team: power of a nudge.
 
Steeltoe and the Open Source .NET Renaissance
Steeltoe and the Open Source .NET RenaissanceSteeltoe and the Open Source .NET Renaissance
Steeltoe and the Open Source .NET Renaissance
 
Dev talks Cluj 2018 : Java in the 21 Century: Are you thinking far enough ahead?
Dev talks Cluj 2018 : Java in the 21 Century: Are you thinking far enough ahead?Dev talks Cluj 2018 : Java in the 21 Century: Are you thinking far enough ahead?
Dev talks Cluj 2018 : Java in the 21 Century: Are you thinking far enough ahead?
 
Transform Your Business with Our Custom iOS App Development Services.pdf
Transform Your Business with Our Custom iOS App Development Services.pdfTransform Your Business with Our Custom iOS App Development Services.pdf
Transform Your Business with Our Custom iOS App Development Services.pdf
 
ASCII Austin Keynote by Intel SMB MSP Marketing Director, Eric Townsend keyno...
ASCII Austin Keynote by Intel SMB MSP Marketing Director, Eric Townsend keyno...ASCII Austin Keynote by Intel SMB MSP Marketing Director, Eric Townsend keyno...
ASCII Austin Keynote by Intel SMB MSP Marketing Director, Eric Townsend keyno...
 
Simple is the best
Simple is the bestSimple is the best
Simple is the best
 
Ways to Hire iOS Programmer for Your Company in 2023.pptx
Ways to Hire iOS Programmer for Your Company in 2023.pptxWays to Hire iOS Programmer for Your Company in 2023.pptx
Ways to Hire iOS Programmer for Your Company in 2023.pptx
 
FMDlite app to support Falsified Medicines Directive in UK
FMDlite app to support Falsified Medicines Directive in UKFMDlite app to support Falsified Medicines Directive in UK
FMDlite app to support Falsified Medicines Directive in UK
 
Vesterli worst adf_project_ever_wildcard_2013
Vesterli worst adf_project_ever_wildcard_2013Vesterli worst adf_project_ever_wildcard_2013
Vesterli worst adf_project_ever_wildcard_2013
 
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...
 
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...
 
Accenture and OpenStack
Accenture and OpenStackAccenture and OpenStack
Accenture and OpenStack
 
Architecture in an Agile World
Architecture in an Agile World Architecture in an Agile World
Architecture in an Agile World
 
DevOps in Practice: When does "Practice" Become "Doing"?
DevOps in Practice: When does "Practice" Become "Doing"?DevOps in Practice: When does "Practice" Become "Doing"?
DevOps in Practice: When does "Practice" Become "Doing"?
 
The Path to Business Agility for Vodafone: How Amazon made us "boring" - Sess...
The Path to Business Agility for Vodafone: How Amazon made us "boring" - Sess...The Path to Business Agility for Vodafone: How Amazon made us "boring" - Sess...
The Path to Business Agility for Vodafone: How Amazon made us "boring" - Sess...
 
Continuous Integration and Continuous Deployment
Continuous Integration and Continuous DeploymentContinuous Integration and Continuous Deployment
Continuous Integration and Continuous Deployment
 
Resume
ResumeResume
Resume
 

Plus de Jane Prusakova

Software architecture houstontechfest2020
Software architecture houstontechfest2020Software architecture houstontechfest2020
Software architecture houstontechfest2020Jane Prusakova
 
Estimating software development
Estimating software developmentEstimating software development
Estimating software developmentJane Prusakova
 
Thoughts on building software architecture
Thoughts on building software architectureThoughts on building software architecture
Thoughts on building software architectureJane Prusakova
 
Improving IT Performance
Improving IT PerformanceImproving IT Performance
Improving IT PerformanceJane Prusakova
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software DevelopmentJane Prusakova
 
Questions of Ethics in Software Development
Questions of Ethics in Software DevelopmentQuestions of Ethics in Software Development
Questions of Ethics in Software DevelopmentJane Prusakova
 
Managing remote teams.
Managing remote teams.Managing remote teams.
Managing remote teams.Jane Prusakova
 
Gender-neutral Recruiting
Gender-neutral RecruitingGender-neutral Recruiting
Gender-neutral RecruitingJane Prusakova
 
Motivating Knowledge Workers
Motivating Knowledge WorkersMotivating Knowledge Workers
Motivating Knowledge WorkersJane Prusakova
 
Pragmatic Agile: distributed teams
Pragmatic Agile: distributed teamsPragmatic Agile: distributed teams
Pragmatic Agile: distributed teamsJane Prusakova
 
A case for remote teams
A case for remote teamsA case for remote teams
A case for remote teamsJane Prusakova
 
Women in Technology. Things that hold women back.
Women in Technology. Things that hold women back. Women in Technology. Things that hold women back.
Women in Technology. Things that hold women back. Jane Prusakova
 
Application Logging for large systems
Application Logging for large systemsApplication Logging for large systems
Application Logging for large systemsJane Prusakova
 
The power of nudge. Building great teams.
The power of nudge. Building great teams. The power of nudge. Building great teams.
The power of nudge. Building great teams. Jane Prusakova
 

Plus de Jane Prusakova (20)

Software architecture houstontechfest2020
Software architecture houstontechfest2020Software architecture houstontechfest2020
Software architecture houstontechfest2020
 
Estimating software development
Estimating software developmentEstimating software development
Estimating software development
 
Better remote teams
Better remote teamsBetter remote teams
Better remote teams
 
Thoughts on building software architecture
Thoughts on building software architectureThoughts on building software architecture
Thoughts on building software architecture
 
Improving IT Performance
Improving IT PerformanceImproving IT Performance
Improving IT Performance
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software Development
 
Questions of Ethics in Software Development
Questions of Ethics in Software DevelopmentQuestions of Ethics in Software Development
Questions of Ethics in Software Development
 
Just startcoding
Just startcodingJust startcoding
Just startcoding
 
Just start coding
Just start codingJust start coding
Just start coding
 
Good code
Good codeGood code
Good code
 
Managing remote teams.
Managing remote teams.Managing remote teams.
Managing remote teams.
 
Gender-neutral Recruiting
Gender-neutral RecruitingGender-neutral Recruiting
Gender-neutral Recruiting
 
Effective Code Review
Effective Code ReviewEffective Code Review
Effective Code Review
 
Effective Code Review
Effective Code ReviewEffective Code Review
Effective Code Review
 
Motivating Knowledge Workers
Motivating Knowledge WorkersMotivating Knowledge Workers
Motivating Knowledge Workers
 
Pragmatic Agile: distributed teams
Pragmatic Agile: distributed teamsPragmatic Agile: distributed teams
Pragmatic Agile: distributed teams
 
A case for remote teams
A case for remote teamsA case for remote teams
A case for remote teams
 
Women in Technology. Things that hold women back.
Women in Technology. Things that hold women back. Women in Technology. Things that hold women back.
Women in Technology. Things that hold women back.
 
Application Logging for large systems
Application Logging for large systemsApplication Logging for large systems
Application Logging for large systems
 
The power of nudge. Building great teams.
The power of nudge. Building great teams. The power of nudge. Building great teams.
The power of nudge. Building great teams.
 

Dernier

Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendArshad QA
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
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-...Steffen Staab
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
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 🔝✔️✔️Delhi Call girls
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 

Dernier (20)

Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and Backend
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
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-...
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
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 🔝✔️✔️
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 

Getting to Good Code: Readability, Simplicity and Design

Notes de l'éditeur

  1. Usability: The system needs to be functional for the users and clients. Usability: The code needs to be readable for the current and future development of the system.
  2. My most popular slide from the #live360 keynote: a comical explanation of how software dev keeps getting harder.
  3. Abelson founding director of both Creative Commons and the Free Software Foundation. Sussman and Abelson are co-authors of popular textbook “Structure and Interpretation of Computer Programs”
  4. Edsger Dijkstra was a Dutch computer scientist, known for introducing the idea that GOTO is a smell, developing shortest path algorithm, and developing the concept of formal verification.
  5. Ben Shneiderman studied programmers and their interactions with the code, developed principles of interface design, worked on information visualization and usability.
  6. This quote first appear in Reader’s Digest in 1977, with no supporting references. Attributed to Einstein from someone’s memory, not found in his writings.
  7. This quote first appear in Reader’s Digest in 1977, with no supporting references. Attributed to Einstein from someone’s memory, not found in his writings.
  8. Bucatti Veyron, top speed 267mph, total production 450 unit. Toyota Corolla, top-selling car for many years. Doesn’t go faster than 111mph. Sold 1.2 units world-wide.