1. Limited time only! Sign up for a free 30min personal tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Do Electrical Engineers have to be good programmers?

  1. Aug 17, 2012 #1
    Hi guys,

    I've finished my first year of general engineering, in which I learned how to use MATLAB. I wasn't very good at it and only received a B. This leads me to believe that I won't be able to program very well and thus, won't succeed at courses offered in Electrical Engineering. Is this true?

    Thanks :)
  2. jcsd
  3. Aug 17, 2012 #2


    User Avatar
    Science Advisor

    That's like saying, " I walked out on the basketball court for the first time and took three shots and missed them all. I guess I'll never be a good basketball player." My point is that programming takes practice, like all skills. Using a computer is important in engineering, but the skill can be learned. If you work at it, you should be able to get as good at it as you need to be .
  4. Aug 17, 2012 #3


    User Avatar

    Staff: Mentor

    Welcome to the PF.

    phyzguy is right. You will have plenty of opportunities to program, and plenty of different languages to try out and learn. You will end up with some languages that you like better than others, and that's fine.

    You will likely need at least basic programming skills in a couple of different languages to do well in EE jobs, but of course that varies with the positions that you have. Despite being a hardware analog/digital guy, I probably spend at least 10% of my time programming for various tasks.
  5. Aug 17, 2012 #4
    In general, yes, it is important to at least to learn C++ type of language. How important depends on whether you are going towards Hardware digital design or analog RF design. For analog RF, it is not as important. But for someone that is young, learn it. You'll find learning FPGA is very easy if you know programming, they are almost the same, it's like learning one extra language.

    Programming might now come natural, the thinking is quite different, you have to adapt to it. You might be one of the slow starter like me. It takes me a while to get started on something, but once I work on it over and over, all of a sudden I pick up speed and even surpass others. So don't get discourage.

    BTW, I don't know Mathlab, I do use a lot of simulation programs. I don't think you can judge whether you are good with programming by experience with Mathlab. Mathlab is like any other utility software, it is an application only.
  6. Aug 17, 2012 #5
    Thanks for the responses everybody! I appreciate it. What I mean is, will my lack of MATLAB prowess hinder my chances of doing well in EE courses that require a decent amount of programming (two courses next semester)?
  7. Aug 18, 2012 #6
    Nowadays EVERY engineers have to be GOOD programmers to increase speed and productivity.
  8. Aug 18, 2012 #7
    You'll prolly be using matlab a good amount in your courses so it'll be good to practice it a bit more. I rarely write elaborate programs in it, in generally boils down to knowing some prebuilt functions and how to use them correctly. Your books will be covered in sample code and such so I wouldn't worry about it.

    MATLAB's syntax is similar to C. I'm surprised you haven't studied a proper language like it prior to working with MATLAB. Most schools I've seen require you to take an intro CS class that usually covers C. You'll be doing alot of C programming when you start working with microcontrollers.
  9. Aug 18, 2012 #8
    Yeah and to be honest - you will work in rather low-leveled programming which is harder than high-level.

    One of the reasons that I have left Physics (and EE) after I graduated was the fact that I didn't like programming and couldn't imagine to do this in my work on daily basics.
  10. Aug 18, 2012 #9
    Actually, in first year, all the engineers were required to take the "Programming for Engineers" course. In the winter term, I'll be taking a "Programming for Electrical Engineers" course, and it's course description is as follows:

    "Architecture and basic components of computing systems. Programming environment and program development methodology. Basics of programming: from data structures and functions to communication with external devices. Principles of object-oriented programming. Good programming style."

    In the first year, I didn't spend much time doing any practice in the programming course, and only did work for assignments. I hate being just "okay" at it and that's why I was worried.
    Last edited: Aug 18, 2012
  11. Aug 19, 2012 #10
    Every engineer should learn SOMETHING about how to write a decent program. Even if you don't program yourself, you'll be reading the programs that others write.

    It's like learning math. I can't imagine how you'd get anything done without it.
  12. Aug 19, 2012 #11


    User Avatar
    Science Advisor

    The question you have to ask yourself is, "How much do you hate being "just okay"? Do you hate it enough to work at getting better?"
  13. Aug 20, 2012 #12
    I am attending a school in Oregon and some of the high up faculty have instilled in us the need to learn programming. Not too long ago, alot of the tech industry around here would come to our school asking for EE students who were also proficient in programing. Long story short, they really could not recommend any students, programing is now an important part of our curriculum.
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook