Stories
Slash Boxes
Comments

SoylentNews is people

posted by LaminatorX on Sunday October 19 2014, @02:43AM   Printer-friendly [Skip to comment(s)]
from the Mathamagician-of-Digitopolis dept.

Jim Edwards writes at Business Insider that Google is so large and has such a massive need for talent that if you have the right skills, Google is really enthusiastic to hear from you - especially if you know how to use MatLab, a fourth-generation programming language that allows matrix manipulations, plotting of functions and data, implementation of algorithms, creation of user interfaces, and interfacing with programs written in other languages, including C, C++, Java, Fortran and Python. The key is that data is produced visually or graphically, rather than in a spreadsheet.

According to Jonathan Rosenberg, Google's former senior vice president for product management, being a master of statistics is probably your best way into Google right now and if you want to work at Google, make sure you can use MatLab. Big data — how to create it, manipulate it, and put it to good use — is one of those areas in which Google is really enthusiastic about. The sexy job in the next ten years will be statisticians. When every business has free and ubiquitous data, the ability to understand it and extract value from it becomes the complimentary scarce factor. It leads to intelligence, and the intelligent business is the successful business, regardless of its size. Rosenberg says that "My quote about statistics that I didn't use [last night] but often do is, 'Data is the sword of the 21st century, those who wield it [are] the samurai.'"

Related Stories

MATLAB vs Python: Why and How to Make the Switch 30 comments

MATLAB and Python are both rather popular languages. Real Python has an overview of the two with an eye towards encouraging use of Python. There is a lot to say when comparing languages, so this is a long read.

MATLAB® is widely known as a high-quality environment for any work that involves arrays, matrices, or linear algebra. Python is newer to this arena but is becoming increasingly popular for similar tasks. As you’ll see in this article, Python has all of the computational power of MATLAB for science tasks and makes it fast and easy to develop robust applications. However, there are some important differences when comparing MATLAB vs Python that you’ll need to learn about to effectively switch over.

In this article, you’ll learn how to:

  • Evaluate the differences of using MATLAB vs Python
  • Set up an environment for Python that duplicates the majority of MATLAB functions
  • Convert scripts from MATLAB to Python
  • Avoid common issues you might have when switching from MATLAB to Python
  • Write code that looks and feels like Python

Earlier on SN:
Python's Guido van Rossum Steps Down (2018)
What's Today's Top Language? Python... no, Wait, Java... no, C (2017)
GNU Octave - Open Source Answer to Matlab - Hits 4.0.0 (2015)
You Want MatLab on Your Resume to Get a Job at Google (2014)
Why Python is Slow: Looking Under the Hood (2014)


Original Submission

This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 0) by Anonymous Coward on Sunday October 19 2014, @02:50AM

    by Anonymous Coward on Sunday October 19 2014, @02:50AM (#107454)

    So we're admitting now that women are sexually aroused by money?

    • (Score: 2) by kaszz on Sunday October 19 2014, @03:03AM

      by kaszz (4211) on Sunday October 19 2014, @03:03AM (#107460) Journal

      Guess when geeks made the pants of females wet? and when mainstream media started to portrait them in a positive way?
      When the $$$$ started to flow and people knew it.

      But don't ask people about it. They can't admit to it. But do observe behavior.

  • (Score: 3) by kaszz on Sunday October 19 2014, @03:00AM

    by kaszz (4211) on Sunday October 19 2014, @03:00AM (#107457) Journal

    GNU Octave [wikipedia.org] won't do for Google?

    • (Score: 0) by Anonymous Coward on Sunday October 19 2014, @03:04AM

      by Anonymous Coward on Sunday October 19 2014, @03:04AM (#107461)

      No Octave. They want to keep the commie pinkos out man. GNU would be a malignant tumor on a tech industry giant like the Google. Evil needs to keep trade secrets secret bro.

    • (Score: 0) by Anonymous Coward on Sunday October 19 2014, @03:29AM

      by Anonymous Coward on Sunday October 19 2014, @03:29AM (#107467)

      No.

  • (Score: 2) by ngarrang on Sunday October 19 2014, @03:40AM

    by ngarrang (896) on Sunday October 19 2014, @03:40AM (#107470) Journal

    I would love, as an individual, to be able to learn MatLab, but it is just so expensive.

    • (Score: 1) by rufty on Sunday October 19 2014, @08:37AM

      by rufty (381) on Sunday October 19 2014, @08:37AM (#107519)

      An individual, non-commercial license isn't that pricey - about the same as the student edition. I'm a radio ham and I got it for mucking about with software defined radio signals (IQ sampling to SSTV, eventually).

    • (Score: 2) by tonyPick on Sunday October 19 2014, @02:59PM

      by tonyPick (1237) on Sunday October 19 2014, @02:59PM (#107552) Homepage Journal

      There's also Scilab (http://en.wikipedia.org/wiki/Scilab) which has a similar syntax to Matlab, and a conversion tool. It's been years since I last used Matlab though, so I couldn't personally say exactly how true that is...

      See also:
      http://www.dspguru.com/dsp/links/matlab-clones [dspguru.com]

  • (Score: 3, Interesting) by novak on Sunday October 19 2014, @03:50AM

    by novak (4683) on Sunday October 19 2014, @03:50AM (#107472) Homepage

    I am sort of ashamed to admit this openly, but I am have used matlab for a number of years. Here's you shouldn't:

    0) Almost comical pricing. If I told you that it was around $5K per license, or four times that if you wanted to actually use the license at more than one computer, you might laugh. But that's only if you get it without any of dozens of toolkits which take it from a basic language to one with decent math libraries. For a single user, Matlab often costs on the same order as the programmer using it.

    1) Demonstrably worse than open source alternatives. Matlab is really hard to work with, compared to alternatives. Nearly everyone prefers python for syntax/ usable OO, C or Fortran for speed, R for simplicity, and there's pretty much no ground that matlab actually wins at. Also it has lots of fun quirks. Try to use a named pipe in matlab on linux and learn all about how you never know when it will flush the buffer (so make sure you close that file).

    2) Really slow. Matlab is very slow at data analysis, although it does have a feature where you can use code written in C as well. I used matlab for some very big data sets, doing very complex operations. It is not always possible to vectorize loops. Even when it is, it is often incredibly ugly and results in a lot of work to optimize. I typically spent a day optimizing things that only took single digit days to write. I may have written the code faster but I wasted so much time optimizing that I lost any gain. I did some benchmarking on complex data operations requiring dynamic memory allocation. Matlab was 2-3 times as slow as python, and on the order of 100 times as slow as C or Fortran, which are the languages that I would actually use for processing tens of GB of data.

    3) Actually the ugliest language I've ever used. And I don't mind using perl. I actually liked perl as a break from matlab. Matlab is just a tragedy of crappy syntax. There are times when the only options are to let an operation run 10 times as long as it ought or vectorize the entire thing into complete unreadability.

    4) Deceptive difficulty. Everyone thinks they can write matlab, or modify matlab, because they did it in school. When they get real, optimized code, they realize that the person who wrote it was working way over their level and that they cannot in fact understand it at all, much less improve it. Matlab frequently turns into a snowball of complexity.

    So if google actually knows ANYTHING about data analysis I seriously doubt they want anyone who knows matlab. If anyone actually told me 'Matlab' when I asked if they knew any programming languages, I'd burst out laughing. Matlab is a bad habit I picked up in engineering school because most code we were given was in it already, and somehow had to use professionally because budget companies from India are more about low prices than quality. It is the second worst language I've ever used professionally (the exception being VBA in MS excel), and I saw it ruin more projects than one with terrible run times.

    --
    novak
    • (Score: 2) by kaszz on Sunday October 19 2014, @04:24AM

      by kaszz (4211) on Sunday October 19 2014, @04:24AM (#107481) Journal

      So Python, C, and R is a suitable replacement?
      (Perhaps GNU Octave and Gnuplot fits here somewhere too?)

      I thought the point of Matlab is that it makes things possible and deal with the complexities for you. But never expected it to be fast..

      • (Score: 2) by physicsmajor on Sunday October 19 2014, @04:31AM

        by physicsmajor (1471) on Sunday October 19 2014, @04:31AM (#107483)

        Indeed. Particularly with Google's Python roots, familiarity, and friendliness it is unbelievable to me that Google could possibly prefer MatLAB over the slick, easy to use, and scalable architecture available today via Python and the SciPy Stack. Hook into R for stats, use Cython to wrap or write lower level code as necessary, and... why does MatLAB exist, again, except for vendor inertia?

        Google directly funds development of the SciPy Stack as well, through the GSoC project. They definitely know about this.

        Was TFA paid for by MathWorks?

        • (Score: 2) by kaszz on Sunday October 19 2014, @05:03AM

          by kaszz (4211) on Sunday October 19 2014, @05:03AM (#107488) Journal

          Perhaps there a bad branch of Google going astray?

          • (Score: 2) by VLM on Sunday October 19 2014, @11:27AM

            by VLM (445) Subscriber Badge on Sunday October 19 2014, @11:27AM (#107528)

            I looked at the article (note, the list of homemade Halloween costumes is a much more interesting article) and its some former pointy haired boss.

            So I'm not sure it means much.

            A typical example. I wrote a SQL query to do something weird with two data sources and my bosses bosses great grandboss heard that some of his peasants use sq... sq something and databases. A quick google and obviously if you want to get hired here you need mssql or posgresql or nosql or something. Actually no, its a mysql install, but whatever.

            Reading technical details into the idle mutterings of a non-technical guy.

            • (Score: 2) by kaszz on Sunday October 19 2014, @03:28PM

              by kaszz (4211) on Sunday October 19 2014, @03:28PM (#107556) Journal

              The one App you need on your résumé if you want a job at Google [businessinsider.com]
              "Google's former svp/product management Jonathan Rosenberg" and the eduction is MBA + Bachelor of Arts degree with honors in economics.

              I think the conclusion has to be that yes statistics and math skills is very useful. But Matlab isn't necessarily the tool for the job.

              VLM, Any ideas on the path from peasant to money hoarding? ;-)

      • (Score: 1) by novak on Sunday October 19 2014, @04:34AM

        by novak (4683) on Sunday October 19 2014, @04:34AM (#107484) Homepage

        Python, C or R could be a replacement. Any one of them is better than Matlab (I guess I should not speak for R because I have little familiarity with it.).

        I once wrote a replacement for a matlab program in C in the time I had waiting for the matlab program to run. To be fair, the program was later optimized to run faster, but only by a factor of 10 or so.

        The selling point of matlab is snazzy pictures baked in. To be fair, the libraries are a bit more versatile than gnuplot, there are some plots which are not easy to reproduce in gnuplot.

        --
        novak
        • (Score: 2) by kaszz on Sunday October 19 2014, @05:05AM

          by kaszz (4211) on Sunday October 19 2014, @05:05AM (#107489) Journal

          The point of Matlab is being able to manipulate maths and getting the maths right. Before implementing or using it elsewhere?
          (the speed is not point)

          How is the GNU Octave libraries compared to Matlab?

          • (Score: 1) by novak on Sunday October 19 2014, @05:24AM

            by novak (4683) on Sunday October 19 2014, @05:24AM (#107497) Homepage

            Matlab's math libraries are not better than any other math libraries, especially not without paying for several toolkits.

            Also it's worth pointing out that speed is the point of anything being used to analyze non-trivial data sets. Do a power weighted reverse interpolation onto an arbitrary mesh for a real data set (well, the software I wrote was working on data sets in the 10 GB size range (dp), being mapped onto 100 MB meshes (dp)). If speed doesn't matter yet it soon will.

            Ooh, here's a fun bit of info: you'll take a major speed hit in matlab on that interpolation if you use any power besides 2.

            Math is not a side bar to 'real' programming, some of the highest performance software is math software, and some of the hardest problems are math problems. Navier-Stokes was the big one in the field I worked. If you could do 100 times as many computations per second as 10 years back, customers expect 100 times as many computations.

            I don't really know about Octave, I tried to use it once or twice and was not really impressed. I recall one matlab program seemed to not run but it turned out it was just running really slow. That was probably five years back though, it may have improved.

            --
            novak
            • (Score: 2) by kaszz on Sunday October 19 2014, @05:33AM

              by kaszz (4211) on Sunday October 19 2014, @05:33AM (#107501) Journal

              I was thinking of stuff like FFT or image recognition etc. Small dataset but complicated math.

              • (Score: 1) by novak on Sunday October 19 2014, @05:46AM

                by novak (4683) on Sunday October 19 2014, @05:46AM (#107502) Homepage

                That's probably the closest you can get to something matlab works well for. If you buy the FFT toolkit or image processing toolkit instead of using a free library in another language.

                --
                novak
    • (Score: 2) by umafuckitt on Sunday October 19 2014, @07:44AM

      by umafuckitt (20) on Sunday October 19 2014, @07:44AM (#107511)

      MATLAB does win in a few ways, I think. The language is highly consistent and well managed, so new releases very rarely cause problems with in your code. The documentation is excellent and it's very easy to find functions and algorithms for the task at hand. This makes coding fast. All this definitely makes MATLAB more simple to use than, say, Python and numpy. I've not found MATLAB slow in my line of work (I work with large volumes of images). Typically I've found Python to be slower. I've never had a problem reading old MATLAB code whereas Perl, which you suggest is more readable than MATLAB, causes problems every time. I know plenty of very smart and competent people--data analysts--who use MATLAB to good effect. If you learn to use it properly, it's excellent. If you find it "a snowball of complexity" then you didn't learn to use it properly.

    • (Score: 0) by Anonymous Coward on Sunday October 19 2014, @12:24PM

      by Anonymous Coward on Sunday October 19 2014, @12:24PM (#107538)

      Google spends more on lunch for their employees per day than Matlab's licensing cost. Besides you can get a student license for $500 and a home license for $150. Both versions are more than enough to learn the software.

  • (Score: 0) by Anonymous Coward on Sunday October 19 2014, @04:05AM

    by Anonymous Coward on Sunday October 19 2014, @04:05AM (#107477)

    1967: "One word... Plastics".

    2014: "One word... Matlab".

    Nice.

  • (Score: 3, Funny) by morgauxo on Sunday October 19 2014, @04:07AM

    by morgauxo (2082) on Sunday October 19 2014, @04:07AM (#107479)

    If I could afford to buy Matlab why would I need a job?

    • (Score: 0) by Anonymous Coward on Sunday October 19 2014, @04:26AM

      by Anonymous Coward on Sunday October 19 2014, @04:26AM (#107482)

      To keep busy?

    • (Score: 1) by tftp on Sunday October 19 2014, @04:40AM

      by tftp (806) on Sunday October 19 2014, @04:40AM (#107485) Homepage

      If I could afford to buy Matlab why would I need a job?

      It's just a test on your "Internet skillz." Factual knowledge of Matlab is very much optional.

      Besides, what percentage of real world coders need to know more than the sin, cos, sqrt? How much math is in Android, outside of java.lang.Math? How good must you be with solving differential equations if you only need to scroll a page by a flick? If Google requires such skills from every programmer that they hire, they are not reasonable.

    • (Score: 2) by kaszz on Sunday October 19 2014, @05:08AM

      by kaszz (4211) on Sunday October 19 2014, @05:08AM (#107490) Journal

      Because your college pays a rebated license from MathWorks to get you hooked on it.

      Perhaps Python, C, R, GNU Octave, Gnuplot will trash the marketplace for Matlab ..

    • (Score: 0) by Anonymous Coward on Sunday October 19 2014, @12:20PM

      by Anonymous Coward on Sunday October 19 2014, @12:20PM (#107537)

      You can't afford $500?

    • (Score: 2) by Tork on Sunday October 19 2014, @06:53PM

      by Tork (3914) on Sunday October 19 2014, @06:53PM (#107598)
      I'm wondering why you'd even bother sending a resume to Google. They already have all that info about you!
      --
      Slashdolt Logic: "23 year old jokes about sharks and lasers are +5, Funny." 💩
      • (Score: 2) by morgauxo on Monday October 20 2014, @01:12PM

        by morgauxo (2082) on Monday October 20 2014, @01:12PM (#107799)

        I love it! I think that I WILL send them a resume. It will be mostly blank and it will say something on it about them already knowing everything!

        - I'm not really looking for a job right now.

  • (Score: 1, Interesting) by Anonymous Coward on Sunday October 19 2014, @04:12AM

    by Anonymous Coward on Sunday October 19 2014, @04:12AM (#107480)
  • (Score: 0) by Anonymous Coward on Sunday October 19 2014, @12:33PM

    by Anonymous Coward on Sunday October 19 2014, @12:33PM (#107539)

    google is important not because of search. it hasnt given any good results since years (or websites have become crap) and i prefer a good library again.
    rather google is important because it finances all the websites on the internet and the dataeware houses that host them.
    has anything gotten better since google?
    as for statistics ... well lets hope it a sword made from steel and that it allows mining of more hard materials to make eveb better swords ... else its just brainwashing in the new church of christ

    • (Score: 0) by Anonymous Coward on Sunday October 19 2014, @12:41PM

      by Anonymous Coward on Sunday October 19 2014, @12:41PM (#107540)

      yes it is strange indeed that in the house of finance the foundation stone is much smaller then the building ontop. nothing would much be standing without intel/amd/arm ... but the combined "worth" is smaller then house google or for that matter house m$?
      what a strange world ...

  • (Score: 2) by PizzaRollPlinkett on Sunday October 19 2014, @01:38PM

    by PizzaRollPlinkett (4512) on Sunday October 19 2014, @01:38PM (#107543)

    Query: Help me out, if anyone is at Google reading this... Does Google really want trained MatLab users, or do they just want anyone who knows big-data statistics? Is Google really investing in copies of MatLab, or do they use Python, R, and Octave? If so, it would go against their entire corporate history of exploiting open source.

    Rumination: Funny that just yesterday, Hadoop was the big thing. Now it's MatLab? Before that it was mobile development, and now that's run its course. There's a new big thing every couple of years. How can anyone have a career when things go hot and cold so fast? And you'd think Google of all people would know to draft on potential, and train the best in whatever the flavor of the month is.

    (Interrogation: What robot begins his sentences with a word describing their intent? You should know that, meatbag, if you read this web zone.)

    --
    (E-mail me if you want a pizza roll!)
  • (Score: 0) by Anonymous Coward on Sunday October 19 2014, @09:17PM

    by Anonymous Coward on Sunday October 19 2014, @09:17PM (#107620)

    We had never heard of MatLab, so we asked Rosenberg what it was.

    a code and data analysis and management tool.

    The writer clearly has no idea what the hell he's talking about.

    Hugh Pickens writes:

    I thought we left the other site.

    • (Score: 3) by looorg on Sunday October 19 2014, @10:26PM

      by looorg (578) on Sunday October 19 2014, @10:26PM (#107635)

      So the upside is you can get a job at Google, the backside is you are stuck doing data-analysis forever ... using Mathlab. They say post office workers go postal cause the mail just keeps coming and piling up. The postman has nothing on the amounts of data Google stores. They are both mind-numbing Sisyphus jobs or tasks. I think I'll pass.

  • (Score: 0) by Anonymous Coward on Monday October 20 2014, @01:16AM

    by Anonymous Coward on Monday October 20 2014, @01:16AM (#107661)

    A couple years ago, I decided it might be a good career move to learn MatLab so I logged onto Amazon and tried to find a book that would provide the usual "30 day trial version" CD-ROM. I'm not a big fan of that format but I figured, if that's the best they offer then that's what I'll take.

    I couldn't find any! Apparently you have to be a full time student or faculty member to get a reasonable deal on their product.

    It's not like I'm running out of stuff I need to learn, so I forgot all about Matlab.

  • (Score: 2) by Jaruzel on Monday October 20 2014, @11:10AM

    by Jaruzel (812) on Monday October 20 2014, @11:10AM (#107769) Homepage Journal

    Mainly focusing on the closing quote of TFA:

    "Data is the sword of the 21st century, those who wield it are the Samurai."

    Data in itself is useless, akin to the lump of steel on the blacksmiths bench. It's when it's turned into usable Information it then becomes 'the sword'.

    Therefore the better quote would be:

    "Information is the sword of the 21st century, those who wield it are the Samurai."

    For example; Data is millions of rows of stats - only when it's parsed and interpreted, does it become Information. This is where the statisticians and information professionals (what we used to call Librarians) earn their keep.

    -Jar

    --
    This is my opinion, there are many others, but this one is mine.
  • (Score: 2) by hash14 on Tuesday October 21 2014, @02:28AM

    by hash14 (1102) on Tuesday October 21 2014, @02:28AM (#108054)

    I wish I hadn't been so busy that I would have been able to post this while the discussion was still relevant...

    The article is obviously planted. What engineer in his right mind would go to Business Insider for advice on how to get a job in the tech industry?

    What's much more likely is that Mathworks "sponsored" BI to write an article for them. Business Insider is a _business_ publication, and they probably did some "business" with Mathworks to get some publicity for their product. There's nothing objective or technical about it... it just says, "use Matlab," and hopefully it'll convince some unwitting engineer to waste his money on a product that won't help him at all (at least not for working at Google).

    Would you ever see BI writing an article telling you to choose the product which is technically superior? Or would they ever even bothering to mention a non-commercial product like Numpy/Scipy or Octave or R? Would they even give you an objective, technical analysis/comparison of any given tool? Feel free to point me out if I'm wrong, but if you want some insight on how relevant business insider understand the technical community, then you might want to check out this [businessinsider.com] article....