Solved

How to train programmer think logically in software development and problem solving?

Posted on 2010-08-22
13
790 Views
Last Modified: 2012-05-10
Dear EE members,

I heard that programmers need to play game like Bejeweled to become a more logical thinker.
Some said do more maths to become a logical thinker.

Some programmers cannot develop program in time, although he gets certified in all the syntaxs. Some programmers cannot debug program. Some programmers don't know
how to enhance modules in  existing system whether simple or complex.

Are all of them face logical problem?

Any ideas to train them?

Regards,
yjchong514
0
Comment
Question by:yjchong514
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
  • 3
  • +3
13 Comments
 
LVL 5

Accepted Solution

by:
truromeo4juliet earned 100 total points
ID: 33496879
Without seeing what kind of issues they're having, they may not all be having logic problems... getting a certification is one thing, but pulling the knowledge out of your head whenever necessary takes practice and experience... they all need to keep practicing, and keep gaining experience...

as for a good logic-based game... minesweeper is amazing.
0
 
LVL 83

Expert Comment

by:Dave Baldwin
ID: 33497028
0
 
LVL 6

Author Comment

by:yjchong514
ID: 33498607
How to determine whether a person is good in logically thinking or not?
Especially, in an interview for the programmer.
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 83

Assisted Solution

by:Dave Baldwin
Dave Baldwin earned 150 total points
ID: 33498651
Did you take a look at "How to Solve It"?  "logical thinking" is not really the question but How to Solve Problems.  The first part, making something work right, is mostly "logical thinking", but the second, figuring out how to fix things when they go wrong, is not so much.  Fixing things in programming is a combination of the logical along with an understanding of how things work and break.  A program can be 'logical' and still not take into account all the things that will make it not work.
0
 
LVL 6

Author Comment

by:yjchong514
ID: 33499718
Dear DaveBaldwin,

Yes. After I took a look on 'How to solve it'. I am now understand more about problem solving.
BTW, can you please elaborate more on:
A program can be 'logical' and still not take into account all the things that will make it not work.

Many thanks.

Regards,
yjchong514
0
 
LVL 83

Assisted Solution

by:Dave Baldwin
Dave Baldwin earned 150 total points
ID: 33502757
Simple.  Take these simple statements:

I want coffee.
I am out of coffee.
I must go to the store and buy coffee.

Sounds logical?  But if the store isn't open or it is out of coffee, you still can't get any coffee.
0
 
LVL 8

Assisted Solution

by:Volox
Volox earned 100 total points
ID: 33507915
As DaveBaldwin says, logical thinking is only a part of the answer.  One thing I have found in common amongst many good developers is their 3D visualization skills.  This may not be universally true but I think there is something to be said for it.  3D puzzles usually require you to not only think logically about the affect of a single move but also require you to consider the other impacts.  It trains you to think about all aspects of the problem in relation to one another and look at the big picture and not just a tiny isolated piece of what you are doing.

For example, a rubik's cube... you have to think logically about how to move a particular square from one point to another, but you also have to think about the movement it causes to other squares.  Other good puzzles to exercise your brain in 3D are those puzzles that are a couple of metal pieces that you try to seperate and put together and the wood blocks that are a bunch of interlocking angled wood pieces.  

There are some here...
http://www.monkeypodgames.com/category/2945665561/1/Interlocking-Wooden-Puzzles.htm
or like the one here...
http://www.monkeypodgames.com/category/2945665561/1/Interlocking-Wooden-Puzzles.htm

I picked up a few at my local farmer's market that are really difficult - not square all crazy angles and stuff.  I couldn't find a good site for the particular ones I have but you get the idea...
0
 
LVL 2

Expert Comment

by:ghemstrom
ID: 33510423
Logics is important - but you have to see to that the programmer does not understand just programming - the logics of the problem that is to be solved has to be transferred in a proper way by the one owning it.
It can be seen very often even in a as skilled community as Expert exchange that problems are ill defined and you sit there with all your logical skills coming nowhere with the solution. If the problem formulator gives a full logic description of the problem he would maybe solve the problem himself.
It might be expensive to use the problem owner for communication with a programmer, but if you cannot afford direct communication you should always have at least one intermediate link, understanding the problem as well as programming, available. Otherwise the programming resource will not be efficiently utilised.
0
 
LVL 2

Assisted Solution

by:arch-itect
arch-itect earned 150 total points
ID: 33512924
Logo is a fantastic little programming language that teaches kids (and adults) to program

You write commands to program a cursor to draw on the screen.
You can start out simple but end up writing quite advanced programs with it

download here :

http://www.softronix.com/logo.html
or
http://www.cs.berkeley.edu/~bh/
0
 
LVL 2

Expert Comment

by:arch-itect
ID: 33528930
Hi yjchong514, has this been helpful?
0
 
LVL 6

Author Comment

by:yjchong514
ID: 33533708
architect: Yes. BTW, does logo support database/file manipulation?
or intro the concept of data structure like stack,queue,link list to newbie?
0
 
LVL 2

Assisted Solution

by:arch-itect
arch-itect earned 150 total points
ID: 33534069
No, it doesn't do database manipulation.  The data structures are : word, list and array.
0
 
LVL 2

Expert Comment

by:ghemstrom
ID: 33534465
...
"Are all of them face logical problem?"
...
As I hinted above, No!
They do not lack logical training. They get training in the programming environment all the time, and that gives them the routine they need to solve problems in that environment. What they need is creativity training. That way you will have prgrammers producing quick efficient solutions. And good understanding of the logics of the problem to be solved by programming.
Certification is no proof of programming ability, but a way to obtain necessary knowledge about the environment. The rest is job training in a successively hardening job environment.
This comment/solution is first of all addressing one of the questions. The question about training is inherent - training comes in the work environment, by guidance etc.

0

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article is meant to give a basic understanding of how to use R Sweave as a way to merge LaTeX and R code seamlessly into one presentable document.
This article will show, step by step, how to integrate R code into a R Sweave document
In this fourth video of the Xpdf series, we discuss and demonstrate the PDFinfo utility, which retrieves the contents of a PDF's Info Dictionary, as well as some other information, including the page count. We show how to isolate the page count in a…

734 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question