SlideShare a Scribd company logo
1 of 5
Download to read offline
First Do It By Hand
If you can’t do it by hand, you
can’t tell a computer how to do it.
Before doing any work on the
computer, get some sheets of
paper and a pencil. Choose an
example of your problem—not
too hard, but not trivial either.
Solve it by hand. The minutes
spent on this step will save you
hours later.
1
5 Tips
to help
you tackle
programming
by Cay Horstmann
1
Solve a Simpler
Problem First
When you face a complex problem,
it is easy to get discouraged. A
great strategy is to solve a simpler
problem first. Ask yourself what
is the absolutely simplest part of
the task that is helpful for the end
result. Start from there. Then add
another feature, and another.
With some practice, you can
design a plan that builds
up a complete solution as
a manageable sequence of
intermediate steps. That way, you
will experience sweet success at
each step, and you will have the
energy to reach a final conclusion.
2
2
Use Physical Objects
Sometimes, you are given a problem
and have no idea how to solve it. You
may know that a loop is required, or
that you need to swap elements, but
that’s not enough to design a solution.
Try acting out your problem with
physical objects. Coins, playing cards,
scrabble tiles, or tin soldiers work great.
Suppose you need to arrange values in
a certain way. Try moving the objects
around until you discover a systematic
way that always achieves the correct
result. Then you are ready to write
pseudocode and code.
3
3
Try Some Code
Your textbook and the library
documentation can be confusing at times.
A quick way of making sense out of the
documentation is to try something out.
For example, suppose you suspect that
the “replace” function can be useful but
you don’t really know what it replaces
or how you can get the result. Make a
string, replace “i” with “x”, and watch what
happens. Many development environments
have a way of running quick experiments
without writing a full-fledged program.
4
4
Write More Code
Programming is not a spectator sport.
Understanding the concepts only gets
you so far. You need to have your hands
on the ball to gain experience. You can
start out with worked examples that
walk you through a solution, a step at
a time. Then set yourself a challenge
to push the example a bit further, and
implement your enhancement.
That way, you build upon something that
works, and you gain valuable experience
reading and writing code.
5
5

More Related Content

What's hot

Prototype and test
Prototype and testPrototype and test
Prototype and test
KathyGlynn
 

What's hot (20)

How to Prioritize and Own Your Time as a PM by Dia&Co
How to Prioritize and Own Your Time as a PM by Dia&CoHow to Prioritize and Own Your Time as a PM by Dia&Co
How to Prioritize and Own Your Time as a PM by Dia&Co
 
10 things I've learnt about lean startup: It's f*****g hard that's for sure!
10 things I've learnt about lean startup: It's f*****g hard that's for sure!10 things I've learnt about lean startup: It's f*****g hard that's for sure!
10 things I've learnt about lean startup: It's f*****g hard that's for sure!
 
Converting your Opportunities: Making your Biggest Opportunity for 2015 / 201...
Converting your Opportunities: Making your Biggest Opportunity for 2015 / 201...Converting your Opportunities: Making your Biggest Opportunity for 2015 / 201...
Converting your Opportunities: Making your Biggest Opportunity for 2015 / 201...
 
Set Yourself Up For Success in Meeting Deadlines
Set Yourself Up For Success in Meeting DeadlinesSet Yourself Up For Success in Meeting Deadlines
Set Yourself Up For Success in Meeting Deadlines
 
My Product Management Mistakes
My Product Management Mistakes My Product Management Mistakes
My Product Management Mistakes
 
Missionizing Your Agile Team
Missionizing Your Agile TeamMissionizing Your Agile Team
Missionizing Your Agile Team
 
Game Product Discovery: Validation & Iteration
Game Product Discovery: Validation & IterationGame Product Discovery: Validation & Iteration
Game Product Discovery: Validation & Iteration
 
Agile + Lean Product Management
Agile + Lean Product ManagementAgile + Lean Product Management
Agile + Lean Product Management
 
Deepayan som prayas 3 10 5-13
Deepayan som prayas 3 10 5-13Deepayan som prayas 3 10 5-13
Deepayan som prayas 3 10 5-13
 
The Essentials of Great Product Design
The Essentials of Great Product DesignThe Essentials of Great Product Design
The Essentials of Great Product Design
 
Team Compensation
Team Compensation Team Compensation
Team Compensation
 
EIA playbook-2016
EIA playbook-2016EIA playbook-2016
EIA playbook-2016
 
Prototype and test
Prototype and testPrototype and test
Prototype and test
 
Kendall Appich Presentation
Kendall Appich Presentation Kendall Appich Presentation
Kendall Appich Presentation
 
5 Essential Tips For Improving Your Website Mockups & Prototypes!
5 Essential Tips For Improving Your Website Mockups & Prototypes!5 Essential Tips For Improving Your Website Mockups & Prototypes!
5 Essential Tips For Improving Your Website Mockups & Prototypes!
 
Using Discovery to create products people actually want (2017 UX Copenhagen W...
Using Discovery to create products people actually want (2017 UX Copenhagen W...Using Discovery to create products people actually want (2017 UX Copenhagen W...
Using Discovery to create products people actually want (2017 UX Copenhagen W...
 
Tamara stefanovic lightening talk june 6- red flags
Tamara stefanovic  lightening talk june 6- red flagsTamara stefanovic  lightening talk june 6- red flags
Tamara stefanovic lightening talk june 6- red flags
 
Cheap'n'easy usability
Cheap'n'easy usabilityCheap'n'easy usability
Cheap'n'easy usability
 
PivotCamp preso
PivotCamp presoPivotCamp preso
PivotCamp preso
 
How To Validate Your Startup Idea
How To Validate Your Startup Idea How To Validate Your Startup Idea
How To Validate Your Startup Idea
 

Viewers also liked

Viewers also liked (20)

Wiley Student Voices
Wiley Student VoicesWiley Student Voices
Wiley Student Voices
 
Startup Technology: Cheatsheet for Non-Techies
Startup Technology: Cheatsheet for Non-TechiesStartup Technology: Cheatsheet for Non-Techies
Startup Technology: Cheatsheet for Non-Techies
 
Writing Smarter Applications with Machine Learning
Writing Smarter Applications with Machine LearningWriting Smarter Applications with Machine Learning
Writing Smarter Applications with Machine Learning
 
Build Features, Not Apps
Build Features, Not AppsBuild Features, Not Apps
Build Features, Not Apps
 
“Writing code that lasts” … or writing code you won’t hate tomorrow.
“Writing code that lasts” … or writing code you won’t hate tomorrow.“Writing code that lasts” … or writing code you won’t hate tomorrow.
“Writing code that lasts” … or writing code you won’t hate tomorrow.
 
Introduction to Go programming
Introduction to Go programmingIntroduction to Go programming
Introduction to Go programming
 
Migration from Swing to JavaFX
Migration from Swing to JavaFXMigration from Swing to JavaFX
Migration from Swing to JavaFX
 
[Infographic] How will Internet of Things (IoT) change the world as we know it?
[Infographic] How will Internet of Things (IoT) change the world as we know it?[Infographic] How will Internet of Things (IoT) change the world as we know it?
[Infographic] How will Internet of Things (IoT) change the world as we know it?
 
QA in Agile World
QA in Agile WorldQA in Agile World
QA in Agile World
 
Cloud History 101
Cloud History 101Cloud History 101
Cloud History 101
 
Visualising Data with Code
Visualising Data with CodeVisualising Data with Code
Visualising Data with Code
 
Montreal Girl Geeks: Building the Modern Web
Montreal Girl Geeks: Building the Modern WebMontreal Girl Geeks: Building the Modern Web
Montreal Girl Geeks: Building the Modern Web
 
12 Values and Skills Gained Through Contemplative Practices in Higher Education
12 Values and Skills Gained Through Contemplative Practices in Higher Education12 Values and Skills Gained Through Contemplative Practices in Higher Education
12 Values and Skills Gained Through Contemplative Practices in Higher Education
 
GDGSCL - Docker a jeho provoz v Heroku a AWS
GDGSCL - Docker a jeho provoz v Heroku a AWSGDGSCL - Docker a jeho provoz v Heroku a AWS
GDGSCL - Docker a jeho provoz v Heroku a AWS
 
Challenge Your Students, Don't Trick Them
Challenge Your Students, Don't Trick ThemChallenge Your Students, Don't Trick Them
Challenge Your Students, Don't Trick Them
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI Explainer
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with Data
 
Five Tips for Increasing Organized Learning & Engagement
Five Tips for Increasing Organized Learning & EngagementFive Tips for Increasing Organized Learning & Engagement
Five Tips for Increasing Organized Learning & Engagement
 
TEDx Manchester: AI & The Future of Work
TEDx Manchester: AI & The Future of WorkTEDx Manchester: AI & The Future of Work
TEDx Manchester: AI & The Future of Work
 
5 Common Myths that Stop People from Using an Antivirus
5 Common Myths that Stop People from Using an Antivirus5 Common Myths that Stop People from Using an Antivirus
5 Common Myths that Stop People from Using an Antivirus
 

Similar to Five Tips To Help You Tackle Programming

Introduction to programming
Introduction to programmingIntroduction to programming
Introduction to programming
Andre Leal
 
Advanced-Quant-Manhattan.pdf
Advanced-Quant-Manhattan.pdfAdvanced-Quant-Manhattan.pdf
Advanced-Quant-Manhattan.pdf
Sumni Uchiha
 
Some Advice for Tackling Data Response Questions
Some Advice for Tackling Data Response QuestionsSome Advice for Tackling Data Response Questions
Some Advice for Tackling Data Response Questions
Welling School Sixth Form
 
Basics of Programming - A Review Guide
Basics of Programming - A Review GuideBasics of Programming - A Review Guide
Basics of Programming - A Review Guide
Benjamin Kissinger
 

Similar to Five Tips To Help You Tackle Programming (20)

Assignment writing tips
Assignment writing tipsAssignment writing tips
Assignment writing tips
 
Cracking the Interview Skills (Coding, Soft Skills, Product Management) Handouts
Cracking the Interview Skills (Coding, Soft Skills, Product Management) HandoutsCracking the Interview Skills (Coding, Soft Skills, Product Management) Handouts
Cracking the Interview Skills (Coding, Soft Skills, Product Management) Handouts
 
computational_thinking_gcse.pptx
computational_thinking_gcse.pptxcomputational_thinking_gcse.pptx
computational_thinking_gcse.pptx
 
30% faster coder on-boarding when you have a code cookbook
30% faster coder on-boarding when you have a code cookbook30% faster coder on-boarding when you have a code cookbook
30% faster coder on-boarding when you have a code cookbook
 
Introduction toprogramming
Introduction toprogrammingIntroduction toprogramming
Introduction toprogramming
 
Introduction to programming
Introduction to programmingIntroduction to programming
Introduction to programming
 
20180324 zen and the art of programming
20180324 zen and the art of programming20180324 zen and the art of programming
20180324 zen and the art of programming
 
A smarter way to learn java script
A smarter way to learn java scriptA smarter way to learn java script
A smarter way to learn java script
 
A Smarter Way to Learn JavaScript.pdf
A Smarter Way to Learn JavaScript.pdfA Smarter Way to Learn JavaScript.pdf
A Smarter Way to Learn JavaScript.pdf
 
Test-Driven Development
 Test-Driven Development  Test-Driven Development
Test-Driven Development
 
A smarter way to learn java script
A smarter way to learn java scriptA smarter way to learn java script
A smarter way to learn java script
 
Advanced-Quant-Manhattan.pdf
Advanced-Quant-Manhattan.pdfAdvanced-Quant-Manhattan.pdf
Advanced-Quant-Manhattan.pdf
 
Time management
Time managementTime management
Time management
 
C programming guide new
C programming guide newC programming guide new
C programming guide new
 
20190413 zen and the art of programming
20190413 zen and the art of programming20190413 zen and the art of programming
20190413 zen and the art of programming
 
The Path of Pain: Mastering Game Design in 20 steps - takeaway
The Path of Pain: Mastering Game Design in 20 steps - takeawayThe Path of Pain: Mastering Game Design in 20 steps - takeaway
The Path of Pain: Mastering Game Design in 20 steps - takeaway
 
Some Advice for Tackling Data Response Questions
Some Advice for Tackling Data Response QuestionsSome Advice for Tackling Data Response Questions
Some Advice for Tackling Data Response Questions
 
Problem Solving
Problem SolvingProblem Solving
Problem Solving
 
Learn how to learn
Learn how to learnLearn how to learn
Learn how to learn
 
Basics of Programming - A Review Guide
Basics of Programming - A Review GuideBasics of Programming - A Review Guide
Basics of Programming - A Review Guide
 

More from Wiley

5 Reasons to Earn Your CPA License WEL
5 Reasons to Earn Your CPA License WEL5 Reasons to Earn Your CPA License WEL
5 Reasons to Earn Your CPA License WEL
Wiley
 
From DBA to EBA: A Five-year Story from a Consortium Shared E-Book Collection...
From DBA to EBA: A Five-year Story from a Consortium Shared E-Book Collection...From DBA to EBA: A Five-year Story from a Consortium Shared E-Book Collection...
From DBA to EBA: A Five-year Story from a Consortium Shared E-Book Collection...
Wiley
 

More from Wiley (20)

Publisher as Strategic Partner for Societies October 2019
Publisher as Strategic Partner for Societies October 2019Publisher as Strategic Partner for Societies October 2019
Publisher as Strategic Partner for Societies October 2019
 
19 Inspiring Books by Jon Gordon
19 Inspiring Books by Jon Gordon19 Inspiring Books by Jon Gordon
19 Inspiring Books by Jon Gordon
 
3 Big Myths That Hold Women Back
3 Big Myths That Hold Women Back3 Big Myths That Hold Women Back
3 Big Myths That Hold Women Back
 
The 5 Types of Meetings Project Managers Need to Master-Slide Deck Number Thr...
The 5 Types of Meetings Project Managers Need to Master-Slide Deck Number Thr...The 5 Types of Meetings Project Managers Need to Master-Slide Deck Number Thr...
The 5 Types of Meetings Project Managers Need to Master-Slide Deck Number Thr...
 
The 5 Types of Meetings Project Managers Need to Master - Slide Deck Number T...
The 5 Types of Meetings Project Managers Need to Master - Slide Deck Number T...The 5 Types of Meetings Project Managers Need to Master - Slide Deck Number T...
The 5 Types of Meetings Project Managers Need to Master - Slide Deck Number T...
 
A Celebration of Women's History Month
A Celebration of Women's History MonthA Celebration of Women's History Month
A Celebration of Women's History Month
 
Leadership Is for Everyone
Leadership Is for EveryoneLeadership Is for Everyone
Leadership Is for Everyone
 
The Five Leadership Practices that Improve Sales Success
The Five Leadership Practices that Improve Sales SuccessThe Five Leadership Practices that Improve Sales Success
The Five Leadership Practices that Improve Sales Success
 
7 Steps to Develop Well-Designed Course Objectives
7 Steps to Develop Well-Designed Course Objectives7 Steps to Develop Well-Designed Course Objectives
7 Steps to Develop Well-Designed Course Objectives
 
Today's Students: 7 Powerful Facts
Today's Students: 7 Powerful FactsToday's Students: 7 Powerful Facts
Today's Students: 7 Powerful Facts
 
Should you get an MBA?
Should you get an MBA?Should you get an MBA?
Should you get an MBA?
 
Valuing International Collaboration in Research
Valuing International Collaboration in ResearchValuing International Collaboration in Research
Valuing International Collaboration in Research
 
Leadership Makes a Difference
Leadership Makes a DifferenceLeadership Makes a Difference
Leadership Makes a Difference
 
5 Reasons to Earn Your CPA License WEL
5 Reasons to Earn Your CPA License WEL5 Reasons to Earn Your CPA License WEL
5 Reasons to Earn Your CPA License WEL
 
From DBA to EBA: A Five-year Story from a Consortium Shared E-Book Collection...
From DBA to EBA: A Five-year Story from a Consortium Shared E-Book Collection...From DBA to EBA: A Five-year Story from a Consortium Shared E-Book Collection...
From DBA to EBA: A Five-year Story from a Consortium Shared E-Book Collection...
 
An Educator's Guide to Cheating
An Educator's Guide to CheatingAn Educator's Guide to Cheating
An Educator's Guide to Cheating
 
Mine the Gap: Using Handouts With Gaps
Mine the Gap: Using Handouts With GapsMine the Gap: Using Handouts With Gaps
Mine the Gap: Using Handouts With Gaps
 
Get Your Students Motivated: Tips for the Classroom
Get Your Students Motivated: Tips for the ClassroomGet Your Students Motivated: Tips for the Classroom
Get Your Students Motivated: Tips for the Classroom
 
Level I CFA Exam 2017 Curriculum Updates
Level I CFA Exam 2017 Curriculum UpdatesLevel I CFA Exam 2017 Curriculum Updates
Level I CFA Exam 2017 Curriculum Updates
 
6 Steps to Hire Someone with Soft Skills
6 Steps to Hire Someone with Soft Skills6 Steps to Hire Someone with Soft Skills
6 Steps to Hire Someone with Soft Skills
 

Recently uploaded

+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 

Recently uploaded (20)

Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.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 🔝✔️✔️
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
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
 
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...
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
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 🔝✔️✔️
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
Pharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodologyPharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodology
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 

Five Tips To Help You Tackle Programming

  • 1. First Do It By Hand If you can’t do it by hand, you can’t tell a computer how to do it. Before doing any work on the computer, get some sheets of paper and a pencil. Choose an example of your problem—not too hard, but not trivial either. Solve it by hand. The minutes spent on this step will save you hours later. 1 5 Tips to help you tackle programming by Cay Horstmann 1
  • 2. Solve a Simpler Problem First When you face a complex problem, it is easy to get discouraged. A great strategy is to solve a simpler problem first. Ask yourself what is the absolutely simplest part of the task that is helpful for the end result. Start from there. Then add another feature, and another. With some practice, you can design a plan that builds up a complete solution as a manageable sequence of intermediate steps. That way, you will experience sweet success at each step, and you will have the energy to reach a final conclusion. 2 2
  • 3. Use Physical Objects Sometimes, you are given a problem and have no idea how to solve it. You may know that a loop is required, or that you need to swap elements, but that’s not enough to design a solution. Try acting out your problem with physical objects. Coins, playing cards, scrabble tiles, or tin soldiers work great. Suppose you need to arrange values in a certain way. Try moving the objects around until you discover a systematic way that always achieves the correct result. Then you are ready to write pseudocode and code. 3 3
  • 4. Try Some Code Your textbook and the library documentation can be confusing at times. A quick way of making sense out of the documentation is to try something out. For example, suppose you suspect that the “replace” function can be useful but you don’t really know what it replaces or how you can get the result. Make a string, replace “i” with “x”, and watch what happens. Many development environments have a way of running quick experiments without writing a full-fledged program. 4 4
  • 5. Write More Code Programming is not a spectator sport. Understanding the concepts only gets you so far. You need to have your hands on the ball to gain experience. You can start out with worked examples that walk you through a solution, a step at a time. Then set yourself a challenge to push the example a bit further, and implement your enhancement. That way, you build upon something that works, and you gain valuable experience reading and writing code. 5 5