What are some good ways to improve programming skills for a mechanical engineer?
-
I do know the basics of programming because I started coding at age 16(high school, thanks to CICSE's curriculum). Now nearly 4 years later, I think that my knowledge is quite insufficient. How can I improve and acquire some expert knowledge? (I've done some fiddling with MATLAB and Python)
-
Answer:
To start with, one needs to be able to convert the basic thought process into programming language. For this I suggest watching Gilbert Strang's Linear algebra videos[1]. You can implement all the course material in Python and develop a good command over both programming and linear algebra. The next step for me would be to learn and implement algorithms to solve common differential equations, like the heat equation, numerically using a programming language. http://lorenabarba.com/ has a nice set of video lectures [2] and accompanying IPython notebooks to help you [3]. Also, visualization of data is very important. Although anything from MATLAB to R does this, being pro open source, I prefer the Numpy and Scipy packages in Python. The book by Hans Peter Langtangen is also good if you want to use Python for computational science [4]. Personally, I would prefer learning a functional programming language too but that's a matter of choice really. I am learning http://en.wikipedia.org/wiki/Scheme_(programming_language). Finally, if you want to delve into High performance computing, Parallel computing basics like http://www.open-mpi.org/ are important to learn too. These are from my experiences so far. I am still learning and probably will always be. [1] http://ocw.mit.edu/courses/mathematics/18-06-linear-algebra-spring-2010/video-lectures/ [2] https://www.youtube.com/playlist?list=PL30F4C5ABCE62CB61 [3] https://bitbucket.org/cfdpython/cfd-python-class/overview [4] http://www.amazon.com/Python-Scripting-Computational-Science-Engineering/dp/3540739157
Sriram Krishnaswamy at Quora Visit the source
Related Q & A:
- How to become a mechanical engineer?Best solution by Yahoo! Answers
- How is the life of a mechanical engineer in the Indian army?Best solution by Quora
- What are some good ways to advertise a business?Best solution by ChaCha
- How can I get in touch with a Mechanical Engineer?Best solution by nationalcareersservice.direct.gov.uk
- What are some good ways to make money fast without a job?Best solution by Quora
Just Added Q & A:
- How many active mobile subscribers are there in China?Best solution by Quora
- How to find the right vacation?Best solution by bookit.com
- How To Make Your Own Primer?Best solution by thekrazycouponlady.com
- How do you get the domain & range?Best solution by ChaCha
- How do you open pop up blockers?Best solution by Yahoo! Answers
For every problem there is a solution! Proved by Solucija.
-
Got an issue and looking for advice?
-
Ask Solucija to search every corner of the Web for help.
-
Get workable solutions and helpful tips in a moment.
Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.