November 17, 2018 at 11:30 am
Comments posted to this topic are about the item Break Problems Down
November 17, 2018 at 5:00 pm
Good article and reminder on one of the fundamentals of how to successfully determine a solution for virtually any problem. Granny used to say "You can only peel one potato at a time". In code, a lot of us call it "Divide'n'Conquer".
--Jeff Moden
Change is inevitable... Change for the better is not.
November 18, 2018 at 9:52 am
Jeff Moden - Saturday, November 17, 2018 5:00 PMGood article and reminder on one of the fundamentals of how to successfully determine a solution for virtually any problem. Granny used to say "You can only peel one potato at a time". In code, a lot of us call it "Divide'n'Conquer".
And when eating an elephant take one bite at a time.
November 19, 2018 at 2:55 am
Yes. It's always worked for me. Internally I might be panicking, thinking how on earth can I get this done? when given a new major requirement or something we've never done. When you break it down though, there are only ever one or two novel aspects. You can easily assess the nub of what you need to achieve with those. The rest is just breaking it down, to things you've tackled plenty - and smiling and looking in control even when super stressed....
November 19, 2018 at 7:02 am
My troubleshooting mantra has largely been "always check the basics, even if you're *sure* the problem's not there." Because all to frequently, it's going to be, it's going to be something you assumed couldn't be the problem, that is the problem.
As you get better and better at troubleshooting, you'll get faster and faster at verifying the basics are all correct.
November 19, 2018 at 12:36 pm
Great advice! In C it's called printf and people would joke about me using the "printf debugger". It's especially useful to minimize timing changes when debugging a race condition. "It works when I put a halt in and use the debugger."
November 20, 2018 at 7:24 pm
Back in the Day when we used Punch Cards, Terminals and Teletypes, we would actually create flow charts for how we expected the programs to flow. Then we would write Pseudocode, and step through it several times keeping track of the variables, etc.. Next we would chose the best language to use from what was available PL/1, COBAL, FORTRAN, PASCAL, and my personal favorite Assembly.
Today most people (myself included) usually sit down and start writing code in the company standard language and keep adding functions till we have it all working, and then we check to see if it works right.
November 22, 2018 at 1:30 pm
Frank W Fulton Jr - Tuesday, November 20, 2018 7:24 PMBack in the Day when we used Punch Cards, Terminals and Teletypes, we would actually create flow charts for how we expected the programs to flow. Then we would write Pseudocode, and step through it several times keeping track of the variables, etc.. Next we would chose the best language to use from what was available PL/1, COBAL, FORTRAN, PASCAL, and my personal favorite Assembly.
Today most people (myself included) usually sit down and start writing code in the company standard language and keep adding functions till we have it all working, and then we check to see if it works right.
If I haven't actually drawn a flow chart, the first thing I do is write comments as if they were a flow chart. Then I fill in the space between the comments with code to do what the comments say. I test each section of code as I write it to ensure that it's working correctly and with the right amount of performance so that I don't have to go back to it once I add the final semi-colon to indicate that section is done.
--Jeff Moden
Change is inevitable... Change for the better is not.
Viewing 8 posts - 1 through 7 (of 7 total)
You must be logged in to reply to this topic. Login to reply