Engineering Topics.md - 401-advanced-javascript-alex2pena/seattle-javascript-401d35 GitHub Wiki
Solving Problems
Read the problem completely twice.
- Most important step( repeat 2-3 times if necessary.
Solve the problem manually with 3 sets of sample data.
- This can be done mathematically or visually, be aware for edge cases
Optimize the manual steps.
- look for ways to simplify, like using a loop..
Write the manual steps as comments or pseudo-code.
- In plain english write out your process without any syntax
Replace the comments or pseudo-code with real code.
- Line by line break it down further and translate it into code
Optimize the real code.
- Lastly pass over your and make any final refactoring or optimizing
Pretend Your Time is Worth $1,000
- Many people under value there time
- Being busy does not translate to successful
- Prioritize things in your life that take time to maximize your potential
- Time will continue to pass, it does not wait for you
- The higher your value, the more and productive you will be
How to think like a programmer
- Have a framework
Understand
- If you can explain the problem in plain english then you understand what is being asked
Plan
- Take the time to plan your approach, Write down steps
Divide
- Break the main problem down into sub problems
Stuck?
- Debug - go line by line through code
- take a step back and try to think differently about your solution
- Try googling and using online resources
Practice
- Practice solutions as regular as possible
Five Whys and Five Hows
-By Ron Bialek, Grace L. Duffy, and John W. Moran
What It Is
-The five whys and five hows constitute a questioning process designed to drill down into the details of a problem or a solution and peel away the layers of symptoms. -The technique was originally developed by Sakichi Toyoda. He states “that by repeating why five times, the nature of the problem as well as its solution becomes clear.” -The five whys are used for drilling down into a problem and the five hows are used to develop the details of a solution to a problem. -Both are designed to bring clarity and refinement to a problem statement or a potential solution and get to the root cause or root solution.
When to Use It
- When we want to push a team investigating a problem to delve into more details of the root causes, the five whys can be used with brainstorming or the cause-and-effect diagram.
- The five hows can be used with brainstorming and the solution-and-effect diagram to develop more details of a solution to a problem under consideration.
- Both methods are techniques to expand the horizon of a team searching for answers. These two techniques force a team to develop a better and more detailed understanding of a problem or solution.
How to Use It
- Draw a box at the top of a piece of flip chart paper and clearly write down the problem or solution to be explored.
- Below the statement box draw five lines in descending order.
- Ask the “Why” or “How” question five times and write the answers on the lines drawn from number one to five.