Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Is asking questions in computer science bad?

  1. Apr 30, 2015 #1
    Hi PF,

    I have been currently pursuing a degree in Computer Science to hopefully end up having a career as a software engineer, as I am taking classes I am finding that the assignments are getting more and more difficult to a point where I find myself lost and in need of guidance. Which got me wondering, is it bad to ask for help? because the way I think about it is that if I can't this problem during school now, what are the chances that I will be able to solve problems in the future? If I need help on an algorithm and I ask a question, what is the point of me becoming a software engineer when obviously the guy I would ask can finish the task himself.. Usually I would try my hardest not to ask for guidance but there eventually comes a time where I feel like I am unable to progress. I've heard rumors that once you are in the field nobody is going to help you, Is this how it's like in the real world? or is it okay to ask for a little guidance? Of course I am usually not asking for straight code but I feel like bouncing idea's in order to solve the problem helps.

    Anyways, it would be great to hear some feedback about this issue,
    I am also sorry if I should've posted this in the general discussion but I felt that this place is appropriate.

    Thanks
     
  2. jcsd
  3. Apr 30, 2015 #2

    Borg

    User Avatar
    Gold Member

    The short answer to your question is no, it is not bad to ask for help. The company that I work for encourages people to help each other because it provides the best results in the long run. That doesn't mean that people are going to end up doing your job for you, it just means that projects can so complex that it's hard for any one individual to know everything about the system. Learn your topics to the best of your ability but don't be afraid to ask for assistance from time to time. Some of the most interesting ways of coding I've learned from asking others for help.
     
  4. Apr 30, 2015 #3
    Ask help, work hard, understand math and complex théory. School is just an help, practice is better.
     
  5. Apr 30, 2015 #4
    You're asking for help now, so I think you've already decided the answer for yourself, but don't fully believe it.

    In engineering, asking questions is a vital part of learning. However I understand that some countries don't teach it that way - I met a chap from Vietnam who was proud to say he never had to ask a single question in school. Needless to say he was a pretty bad programmer.

    Experts weren't born experts. They got that way by defeating obstacles to their understanding, and if that means asking someone else, so be it.
     
  6. Apr 30, 2015 #5

    berkeman

    User Avatar

    Staff: Mentor

    Nope. As long as you've done your homework and tried to figure something out on your own, I will do my best to help out when you ask me. If you haven't tried very hard or are looking for a quick answer that you could figure out on your own with a little effort, I'll probably help you that once, and remind you that you need to do your homework first, in case you are able to figure out the answer yourself.

    That leads to the best overall situation, where everybody is doing there best, and there is support to help out if needed. Just today I was helped by several other engineers on some hard problems I'm working on debugging, and I helped a couple other engineers with similar problems of their own. :smile:
     
  7. Apr 30, 2015 #6
    Actually I missed that you said this and only saw it when i read /u/berkleman's response.

    I know a lot of soviet-trained the middle eastern armies worked that way. Technical experts did not pass on knowledge because it would de-value their status (if you're the only one who knows it, you're important). I don't know if they do engineering like that (I hope not!). I guess I should have asked you where you're from/studying. If you're working in somewhere western-influenced, people will be happy to teach if you ask nicely, and companies usually train up their staff so they can perform better (the more your staff know, the better your company's code).

    You could also start contributing to open source projects today! We'd be happy to teach. It can only improve the quality of open source.
     
  8. May 1, 2015 #7

    D H

    User Avatar
    Staff Emeritus
    Science Advisor

    Of course it helps. What's better: You struggling for hours, getting nowhere, or asking one of your coworkers who knows the subject domain well for a bit of help and getting past the problem in a few minutes?

    In every place I've worked, the more experienced engineers are strongly encouraged to spend part of their time mentoring the younger employees. One of the first jobs I worked on (this was a long time ago) used a concept they called programming dummies. Someone would say "DH, could you take a moment and be a programming dummy?" He would explain what he was doing, show some code, and I would occasionally interject with a dumb question. Except those dumb questions oftentimes turned out to be not so dumb. They would identify the problem or the way forward. The engineer who asked for help would inevitably smack himself on the forehead, "oh, you dummy!" (Hence the name.) A few minutes of help on my part saved hours of that other person's time. And vice versa. Every good organization fosters this kind of participation because it saves them money and time.

    There is a fine line. Ask for too much help and you will be perceived negatively. If senior engineers regularly have to set aside their own tasks to do all of your job, this net gain has become a huge net loss. Most younger engineers don't come anywhere close to crossing that line. They are more likely to feel a bit intimidated and ask for too little help.
     
  9. May 5, 2015 #8
    I've worked for three different companies and I've never heard of the idea that if you get stuck no one will help you. Unless you are the only developer, that's not going to happen. All you need to do in the workplace in my experience is go to another programmer and say something like "can I get a second set of eyes on this?" I either ask for help or get asked once a day minimum, not always stuck on something, sometimes it's just to confirm code. If the problem is really complicated, it may require multiple people to sit in a whiteboard room and discuss it.
     
  10. May 5, 2015 #9

    rcgldr

    User Avatar
    Homework Helper

    I'm retired now, but at the 10 different companies I've worked for and from another 10+ companies that my friends have worked for, only one of these 20+ companies had a reputation of having an environment where others were not helpful, and for the most part, that reputation made it difficult for that company to hire programmers.

    Generally when you first start at a company you get some type of orientation and documentation. During the design phase of a project, a development team has a series of meeting to discuss how the project will be implemented, along with the interfaces between the components being developed by individuals of the team. It's also rare for a truly new algorithm to be invented anymore, so for the most part, most problems facing a development team already have solutions, and the team is mostly following a known solution and most of the focus is how to implement it.
     
  11. May 5, 2015 #10

    russ_watters

    User Avatar

    Staff: Mentor

    I go to my boss for help regularly and occasionally he even comes to me for help.

    In school, asking for help is practically demanded of you: if you aren't doing very well and you aren't asking for help, that's another strike against you. The whole point of school is to learn, so asking for help when you need it is an important part of it.
     
  12. May 5, 2015 #11
    Computer science and software engineering aren't my fields but I think it's pretty universal among the sciences, and pretty much everything else we endeavor to learn, that asking for help is absolutely vital to increasing our personal understanding of something. It does not mean you are inherently unable to learn a thing simply because you get stuck at a certain point.

    I have always been a natural at math, but for some reason or other I had a difficult time understanding binomials and polynomials during my early school years. I asked for help from another student. She showed me her way of doing it, it clicked, and I had no problems from then on well through calculus. Sometimes, it just takes a few pointers to get you back on track. And there's no shame in asking for those pointers.

    If you truly think you will find yourself in a profession where your coworkers will shun helping you, then school is exactly the place where you ought to ask for help as much as possible. "Arm" yourself with as much knowledge as you can before you throw yourself into such a friendless profession.

    If indeed such a profession exists that is. I've never experienced such. Ideally, real professionals help each other and exchange knowledge and experience for the benefit of all.
     
  13. May 6, 2015 #12

    meBigGuy

    User Avatar
    Gold Member

    Most people enjoy sharing their knowledge and helping someone learn how to solve a problem. All good employees do. Of course, this assumes you take what they teach and run with it. If you keep coming back with questions because you are easily brickwalled, that can become tiresome.
     
  14. May 6, 2015 #13
    Here, this might be useful if I explain my current development process:

    When creating a new project or creating a new module on an existing product, all of the engineers get in a room and talk about it. We usually have a number of whiteboards and draw out the current design and figure out the best ways to tweak it or replace it. There are lots reasons to have multiple people do this: mostly nobody is going to have all of the experience needed to do a complicated project by themselves efficiently. I might know everything there is to know about C++ and I'm adequate with socket communication and databases, another developer might be alright with C++, know nothing about sockets, but is a mysql wizard. Then maybe one of developer who knows everything about networking. Individually, we could each produce a functioning system, but together we could produce a brilliant system.

    Most companies have some sort of internal wiki, and there is ofter a page that is just dedicated to random thoughts and questions. Sometimes they are massive with deep discussions. Often times a computer science question has multiple solutions, and a bigger group will come up with more solutions and also analyze the solutions better to find the best
     
  15. May 6, 2015 #14

    NascentOxygen

    User Avatar

    Staff: Mentor

    Hi freshcoast. You're a student. You should be collaborating closely with fellow students, you will learn a lot more and student life will be more enjoyable & productive. At primary and high school much is made of doing your own work, but this is not the model of learning that is appropriate to university, nor to careers after graduation. You need to unlearn the notion of there being virtue in struggling alone and learn to approach your studies as a collaborative effort of a student body with a common purpose, namely, of mastering the subject and consequently achieving good grades.

    Nothing could make a university professor happier than to be able to pass every student in the course because they all demonstrated the required competency! The sooner you start networking with your peers, the better. If you shy away from seeking to discuss coursework difficulties with others in your class it will be to your detriment. You all have a common interest, so should work together as much as possible to help each other's understanding. Once you start viewing successful study as a team effort rather than a solitary endeavour you'll find that you, in turn, have plenty of opportunities to help others, it's a two-way street.

    Of one thing you can be certain, others are collaborating, so why should you struggle on alone---and possibly fail in a course of study you have chosen to pursue?

    I know you were alluding to asking for help from your teachers, but at the university level you'll find fellow students in your class can usually be equally helpful, and not as pressed for time as your teachers.
     
  16. May 6, 2015 #15
    Well said. Humans are social creatures, and our learning process is not isolated from that fact.
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook




Similar Discussions: Is asking questions in computer science bad?
  1. Computer Science (Replies: 8)

Loading...