Question:

Programmnig language for an engineer?

by  |  earlier

0 LIKES UnLike

I used to be a Visual Basic 6 programmer and it has served me well. However since last 5-6 years I have been working as a petroleum engineer. I need to know what programming language would be more suitable, more efficient for writing, well, engineering programs. C or C# or something else. I have heard good things about C# but since MS makes changes to it every two years, I am not sure if thats the right choice. My primary focus is going to be creating apps that provides solutions to literally multi million dollar questions. So I would rather be spending time on finding solutions than re-learning programming every year or two. Another engineer I know uses Fortran which he learned probably 15-20 years ago if not more and keeps using it. I need something like that I can keep using for long time. Any suggestions would be helpful. BTW, it will be on MS Windows platform for now.

 Tags:

   Report

4 ANSWERS


  1. I would continue to use VB. You can buy many engineering-specific ActiveX controls to use with it, so it is infinitely extensible, and its ease of integration with MS Office apps is unsurpassed. Plus, VBA and VBScript come in very handy.

    If you insist on a new language, one of the object-oriented C derivatives would be much better than Fortran or Java (whatever you do, don't use Java on anything important!). But be prepared for a steep learning curve before you can do anything productive.


  2. As a Mechanical / Robotic / Automation Engineer I have recently switched over to the "Dark" side of programming where I use "C" / "C++".   Most of my manufacturing experience comes from Robotic and Automation engineering that expected me to write snippets (most of which is math modeling) of code using "C".  "C#" is the C++ equivalent for complex web pages and database manipulation.  "C" isn't going anywhere soon, so I suspect that it would be a great idea to learn "C".  Most of the applications use a graphical user interface (GUI) that is best designed using GNomes's GTK development toolkit written with "C" libraries.  Another GUI called "Tcl/Tk" is formatted similar to "C" but, uses the simplest of coding.

    Avoid Microsoft coding at all costs.  Use Linux / Mac as an operating system, so that you won't heavily rely on Microsoft's complex operating system.

  3. Engineers program in whatever they have to. Even Visual Nonsense, if necessary. I won't do that, of course. I would rather quit the job than do a task in Visual Anything. But that's just me (because I am a hardware guy) and I can afford to do so (because I am a hardware guy). And nobody ever forced any language on me, anyway. Which makes me a lucky (hardware) guy. But you might not be so lucky, so be prepared to program in whatever they tell you to.

    If you are going to create solutions for multi-million dollar questions, you won't get a choice, for sure. The system architect will tell you what to use and that's going to be it. And if you can't be prolific in that language right from the start you are likely going to be out of a job within a week or two.

    The correct answer to "I need something I can use for a long time" is

    "Which planet are you from?".  

  4. Learn C and doing any work in C# or C++ is a fairly straight-forward development from that. Start with the basics and work your way up! My recommendation is to go by experience and try out the different programming languages available.

    Although I don't think this applies to you;

    It's useful to know (and use where appropriate!) assembly programming for real rock-solid low-level development.

    I cannot advise you against fortran, but if you are developing for MS Windows platforms I would recommend C over fortran due to the vast quantity of tools (and tutorials) available to enhance your C-language based applications (Graphical User Interfaces etc.)

Question Stats

Latest activity: earlier.
This question has 4 answers.

BECOME A GUIDE

Share your knowledge and help people by answering questions.