Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I guess I'm capable of solving problems with my pencil and paper easily, but I find it takes more time to implement the solution in code.

Between "solving" or "implementation", which is more important in the IT field?

share|improve this question

closed as not constructive by Mark Trapp Feb 17 '12 at 17:15

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

2  
In the real life there are no problems, but only the daily grind. –  Job Jun 18 '11 at 5:41
1  
@Job: I don't understand. –  Jim G. Jun 18 '11 at 14:51

5 Answers 5

up vote 9 down vote accepted

I find it hard to imagine that any employer would be happy with a programmer who could only solve problems on paper since the deliverable is typically working software.

You wouldn't be happy if you went to Burger King and the cashier took your money and described a hamburger to you, would you? Not even if it sounded delicious.

Perhaps you should consider a career as an architect instead of a programmer, though I think you'd need strong programming skills for that job too.

share|improve this answer
    
Yup i have programming skills :) but i'm taking more time to implement than solving that problem :) –  Ant's Jun 18 '11 at 5:17
2  
@GroovyUser- everyone does. It takes me 5 days to write up a design document, and then another 2 months to actually implement it. So what? –  littleadv Jun 18 '11 at 5:18
1  
That's pretty much expected at this stage in your career. Like anything else, you will get better with lots of practice. Eventually you will be able to write code faster than your brain can keep up introducing a completely different set of problems. –  JohnFx Jun 18 '11 at 5:19
    
and @littleadv : thanks for your answer and comments :D –  Ant's Jun 18 '11 at 5:21
    
I think programmers become architects eventually, I don't see a direct path to becoming an architect without writing direct code. I meant to say Problem solving is more important than implementation. Implementation is far more easier once problem is solved. –  Dredd Feb 17 '12 at 17:05

The answer is - to some extent - it depends. It depends on which IT field you want to be in. But I would say you won't make decent progress in any IT field if you decide to specialise in problem solving or implementation. Being frank, the average programmer - and even a lot of bad programmers - can manage solving the problem and implementing the solution and there are a lot of people out there wanting to work in IT. Most architects I know have a very decent nuts and bolts coverage of the the problems they are solving on a day to day basis.

Very, very few jobs involve being a one-trick pony. What you're suggesting is that you just do half the job.

Any half decent programmer can do what you're good at - identifying a solution to a problem on paper. All of them can also then code up those solutions.

share|improve this answer

In IT industry implementation is important. When you implement some solution it clearly means that your solution is right in practice. The implementation is proof of of your solution.

I will tell you how you can improve upon your implementation. Participate in the online contest. Few are

codechef.com

Spoj.pl

https://contest.codequest.spotify.com/

Solve these problem and you will understand how important the implementation is. Most of these problems looks easy in mind, unless you try to implement it. The real IT field situation is no different.

Also if you think there are some jobs where your competency is judged by how good you are a solver you are right. But then to reach there, you must be prove your implementaion skills.

share|improve this answer

On Computer Science, like in maths, there are problems that must be 'solved', like analyzing the best algorithm to match a picture on your collection. Solving a problem is the most important part on CS.

When you are on 'IT business', the Implementation get much more important, but planing the execution (comparable to 'solving the problem', with pencil and paper) is still a necessary and fundamental part.

share|improve this answer
    
I disagree that solving the problem is most important. I would agree that it is by far the harder of the 2 problems, but solved problems without an implementation aren't worth anything. It's like having an idea that you know would make millions, but you never get around to implementing it. So it is worth nothing. –  Dunk Feb 17 '12 at 21:40

Both. Implementation requires practice, solving requires brains, combining them together requires experience.

It will come, don't worry. The fact that you can solve problems with pencil and paper is very promising. Many people cannot come up with solutions, while the technical issue of implementing a solution designed by someone else is a non issue for them. So you've got an advantage, it's easier to acquire technical skills in programming languages, than an ability of logical thinking and problem solving.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.