Doug's MATLAB Video Tutorials

May 21st, 2010

Why do I use the MATLAB language?

You and I are both here because we use MATLAB.

I use MATLAB a lot, and odds are pretty good you do to. I went to some fancy-pants engineering schools, but I am pretty sure I am not an engineer. I speak “engineer” as a second language but MATLAB is my first language. A lot of what I do here for MathWorks is show people how to translate the languages of “engineer”, “science”, and “finance” into MATLAB.

In engineering school, I felt like I was a “programmer”. Relative to my colleagues, I was. I now work at a software company and recently made an attempt at learning Ruby on Rails. That quickly cleared up any illusion that I am a Real Programmer. I am a MATLAB user that understands more programming than I can actually do myself.

Every job I have had since I started college I got because I could use MATLAB: computer lab monitor, engineering co-op, research assistant, three time MATLAB textbook author, graduate student and finally MathWorker.

With such a heavy investment in MATLAB, it is natural to as why? It comes down to that “Ah Ha moment.” I am pretty sure you have had that. You know there is a pattern in that data… clickety, clackety, F5 and “Ah Ha” there is that pattern.

Sometimes I am just curious, “How much money do I save if I pay an extra $20 a month on my mortgage each month?” Yes, I know there are calculators on the web that will do that, but will they plot it exactly like I want, plus allow me to increase the amount by a dollar every month? clickety, clackety, F5 and “Ah Ha” now I know.

I use MATLAB because I like to feel really clever and MATLAB lets me do that faster and more easily than any other piece of software I have ever found.

The most exciting phrase to hear in science, the one that heralds new discoveries, is not ‘Eureka!’ (I found it!) but ‘That’s funny …’

Isaac Asimov

Why do you use MATLAB?

12 Responses to “Why do I use the MATLAB language?”

  1. Drazick replied on :

    Well, I’m an Engineer.
    For me, Matlab is just far more bearable than any other Programming Language.

    Though I have my reservations.
    Its drawing speed (The whole Graphics Stack) is slow :-).

  2. jiro replied on :

    I think I’m in the same boat as Doug.

    I use MATLAB because it makes me feel like I’m a programmer, even though I’m not. My background is engineering, mechanical to be precise, and I’ve never taken a real programming course… oh wait, I took 2 semesters of Pascal. But I’ve always liked programming. I had programmed in BASIC since I was little. Then I became an engineer, thinking that would be my profession. I started using MATLAB in graduate school and used it to do research in biomechanics. Quickly, I became more interesting in the MATLAB side of things, than my research. I enjoyed my research, but MATLAB probably made it more enjoyable.

    I just like the satisfaction I get when I take ideas and translate them into something that computers can understand, without anything lost in translation.

  3. JN replied on :

    Doug, I completely empathize with you. I started using MATLAB in college and fell in love with it not because it allowed me to do the same things faster, but because it allowed me to do more.

    Suddenly I was not simply following a professor’s guidance on how to solve a problem. I was solving it in many different ways. While my colleagues were struggling to find solutions for ODEs and PDEs, I knew exactly what to look for, and then to add an optimization layer on top of it to find the best equation parameters to meet some goal. While we all were trying grasp what statistical packages were doing behind the scene when we asked them to do principal component analysis, some MATLAB knowledge (and help files) allowed me to build a PCA routine from the ground up based on SVD. And it happened in virtually every class.

    After I found MATLAB, the lectures I attended were no longer filled with techniques I had to learn, but were instead sources of interesting problems I could try to find better solutions for.

    I use other programming languages and like the diversity, but I’m fully aware that had I not known MATLAB, I would not have enjoyed so much my years in college.

  4. max replied on :

    i don’t :) i use python. but booth are very similar

  5. dhull replied on :

    @JN

    “After I found MATLAB, the lectures I attended were no longer filled with techniques I had to learn, but were instead sources of interesting problems I could try to find better solutions for.”

    Oh my, so true! I attended a class I was not even registered for and used it as an outline for this book:

    http://amzn.com/0138640343

    I knew I wanted to write a book, and I thought making a Mohr’s circle function would be cool. That was pretty much how I chose the topic…

  6. Sven replied on :

    I took a double degree at Uni (Engn (mechatronics), and IT (software development)), but I always felt like an engineer. I actually remember the short MATLAB course we took as part of engineering – me and my lab partner disliked the tutorial (which was showing MATLAB syntax), we somehow found a part of the MATLAB docs where an image of the world was wrapped around a sphere, and we spent the whole time trying to replace the world image with headshot photos of our lecturers. Great fun.
    This must have left a good impression, because when I wanted to write a Mohr’s circle function (huh, seems a recurrent theme…), I went with MATLAB.

    In some sense, I think I wanted to be an engineer more than a programmer, and I saw MATLAB as an engineering tool and the alternatives (c,java,perl,etc) as programming languages.
    In the end I think that every engineering problem I’ve encountered has been helped by some form of automation of tasks, and my weapon of choice is pretty much MATLAB.

  7. Elite Hussar replied on :

    I am a student in university, I study computer science and Matlab helps me a lot in many projects.

  8. Shalin Mehta replied on :

    MATLAB offers an amazing balance between fine control and abstraction. As people have related, MATLAB lets the user worry about big picture when he/she wants to and nuts and bolts when he/she want to. I am a graduate student working with microscopes and optics, and MATLAB’s linear algebraic and signal processing methods have been very useful. I do think there is room for improvement in certain conventions that MATLAB uses.
    e.g. computing with complex MATLAB data type takes more than 10 times in comparison to my handling real and imaginary parts separately. Is it because of MATLAB stores real and imaginary numbers in incongruous memory? Also, the conventions used in image processing toolbox (e.g., first dimension is Y rather than X, the pixel location can be defined in two ways) could be more streamlined.

  9. Tom CLark replied on :

    I use MATLAB because I love it.

    No other language teaches you about Maths and Engineering whilst you’re using it. As an engineering undergraduate, I used to be a pretty mediocre student. When I seriously started using MATLAB in my first job, it helped me to ‘innovate’ by applying concepts which had seemed completely abstract as a student – like Linear Algebra.

    Because of MATLAB:
    - I no longer suck at linear algebra
    - I’m good at computational geometry
    - I now understand (as far as you can!) nonlinear and multiobjective optimisation
    - The list goes on and on and on!

  10. Matteo Niccoli replied on :

    “I use MATLAB because it makes me feel like I’m a programmer, even though I’m not.”
    I love what Jiro said. I feel the same too:
    Matlab makes me feel like I’m a programmer, even though I’m not. I’m a geologist!
    And I get a high from puzzle solving.
    Matteo

  11. Tek replied on :

    Frankly, my boss use Matlab, and also sometimes use Fortran, and C++. Since I’ve been using this tool, one of the impressive thing is the compiling things. If it correct or not, Matlab easily can compile to the end of line. Now, I can’t imagine my research without Matlab. I love it.

  12. Lior Cohen replied on :

    I am too an extensive Matlab user. Why?

    Because it let me test my ideas and innovations very quickly.

    Because it let me “feel” the code, stop a little with a break point, add some lines, try this an try that, plot some graphs or image to see what I got, and Suddenly … through this “code gaming” I finally have a great working program. It is like designing and improving your car while driving and get the feedback right away.

    Because it save me the “dirty work” of declaring this and allocate memory for that and let me focused on the real target that challenges me.

    Because the code is very clean and minimal and very easy to understand and maintain.

Leave a Reply

Wrap code fragments inside <pre> tags, like this:

<pre class="code">
a = magic(3);
sum(a)
</pre>

If you have a "<" character in your code, either follow it with a space or replace it with "&lt;" (including the semicolon).


MathWorks

Doug Hull is a proud MathWorker who is on a mission to help you with MATLAB.

Doug's picture

These postings are the author's and don't necessarily represent the opinions of The MathWorks.