It's nice to see OR get some love on HN. I think one of the biggest problems with OR practitioners is that we have a hard time articulating what we bring to the table. My job title is "suitability analyst," but that doesn't tell the whole picture. We have slogans like "The Science of Better," but most people still don't understand what we do. OR is overshadowed by larger but not necessarily better "brands" like systems engineering and MBAs spouting words like "lean." I can't tell people that I do OR because people ask "what's that?" and don't have time for me to give them a five minute explanation. I might just point them to this page and say if you really want to know then read this. Otherwise just go ahead and think of me as an industrial engineer/computer scientist/mathematician/statistician/economist all rolled into one.
When people ask me what OR is, I say it's "mathematical modeling and computer simulation" or "system analysis and optimization" or just "optimization".
Good resource for OR fellows to fish for some nice examples and descriptions:
At a graduation ceremony a couple of years ago, the chair of the OR department at Cornell said that OR is "the math, modeling, computer science and engineering of making decisions in often uncertain environments." I'm paraphrasing, but I thought that was a pretty good definition.
I love having studied OR; I would love for it to have more name recognition so that it wouldn't be so hard to explain!
As a graduating student in this field of "industrial_engineer/computer_scientist/mathematician/statistician/economist" I found this story and the rest of the site (not the front page picture) fairly inspiring. There are no role models even with the decent amount of blogging the OR/MS community does. They are still stuffy academicians, perhaps so because they could not find role models in industry either.
If you want an excellent OR role model, I suggest you check out Gene Woolsey. He has a book that is a collection of stories of real world OR, not just solving traveling salesmen problems: http://www.lionhrtpub.com/books/wp1.html He's an excellent example of a non-stuffy academic that focuses on applying OR to the real world.
Thanks for that link. It also did remind me of one Australian company [http://www.biarri.com/about_the_team.shtml] that I explore from time to time. They seem to offer the most types of OR decision support for business, even with SaaS delivery.
The terms the author is searching for are "applied mathematics" and "applied mathematician." The meaning is pretty straightforward (apply mathematical tools created by others). It also requires far fewer words.
Its hard for everyone to accurately describe what they do in one word, but if someone launched into a story like this when I asked him what he did, I'd laugh inside. I say that with complete empathy, because I have done the same thing, had long internal debates with myself about which stereotypes I want strangers to associate with me.
But being accurate about your job description isn't really what someone wants to know when they ask that question, is it? They're really looking for information about you, not your job. Your job title comes with a guess at a range of how much money you make, and what kind of activities you spend your time doing. Nobody really cares if your math is industrial or not. If you do a lot of math while you work, its entirely reasonable to say you're a mathematician. And since nobody knows what an industrial mathematician is, all they're going to hear is 'mathematician' anyway. :)
It doesn't help to promote poor stereotypes either, but Adam does it anyway. Its understandable and we all do it, but it sure would be better to fight the negative images than reinforce them.
"Today, they [mathematicians] produce papers for publication"
Here Adam is talking about math professors. Academics. A mathematician, on the other hand, is anyone who does math. Adam is a mathematician.
"People who design new technologies are engineers."
Not bad, but I like wikipedia's definition beter: An engineer is a professional practitioner of engineering, concerned with applying scientific knowledge, mathematics and ingenuity to develop solutions for technical problems. Adam is an engineer.
Re: analysts, he begins: "Working with pencil and paper..."
This just in, nobody except for sketch artists work with pencils anymore, and even most of them are on the computer. Analysts spend their time analyzing, and Adam spent multiple paragraphs describing his brand of analysis.
A programmer is a "person who carries out the specific instructions of an engineer".
Wow. How many of you does that apply to? Generally, the programmer is the engineer, no? I can't say I've ever met a programmer that definition would apply to, I can't think of one who ever took his technical direction from an "engineer".
"The programmer is carrying out the vision of another while my software is written to support my own vision."
That seems just a little exaggerated to me, since he works for a company just like the rest of us. And lest we forget the millions of programmers releasing their wares open source, or places like the Android or Apple app stores. Those are the people truly writing software to support their own vision.
"The computer scientist seeks a holy grail of computing."
I agree with this one, and I agree with Adam that he's not one. :) But, very few people who call themselves computer scientists are actually computer scientists. Most of them are programmers. Or engineers, if you like.
Consultants are "costly parasites in American business."
That might be true, but if you are a temporary or contract hire, or the result of your time is advice to a company, then you actually are a consultant.
Ultimately, using a categorical term is necessary when describing what you do to someone else. Its up to us to determine whether those terms are neutral categories or negative stereotypes.
He uses the word "programmer" only for people that write code, and the word "engineer" for people that design technical solutions. Somebody can be both, a "programmer" and an "engineer", but a "programmer" is not necessarily an "engineer" if the actual technical design, strategy, and main technical questions are answered by another person (the "engineer"). This division of labour is a common model in some Big Co's (with ~50 programmers or more), not in small-medium size compaines or in the startup world.
IMHO this model is not perfect, but there is a point when the time of a high level technical person should not be wasted in trivial implementation details (whatever you call him "programmer" or "engineer")
Of course this is mainly semantics, but I don't agree with the way the post uses the terms "scientist" and "engineer".
In my opinion, the difference between "scientist" and "engineer" lies in the nature of the work they do, not in the level of abstraction:
"Scientists" advance scientific knowledge.
"Engineers" design technology applying this knowledge.
I find the analogy kind of muddy, I believe that a programming language is a product of "engineering", not "science". "Engineers" had been using abstractions (black boxes) designed by other "Engineers" for quite some time now.
Correct. If you went through the comments in that post and the linked previous post, other people also went ballistic [precisely] because of the usage of the terms rather than the abstraction he was trying to make.
So, in the end it boils down to "point of view" of looking at things, leading to the fatalistic "to each their own" response. :-)
Given that his degree is in Operations Research, I wonder why he doesn't say he does Operations Research, rather than Industrial Mathematics. I often say I do OR.
He answers this question fairly concisely in the first section "What I do", the link in the first section [http://www.the-adam.com/adam/math-4q6/hypersq.htm], and the second last section "What I am not".
I am finishing an MS in Industrial Engineering, a synonym of Operations Research. I have also been looking for related jobs that use those skills for two years. Many relevant jobs are in big data and analytics, subjects common to Hacker News; many belong to business operations such as demand planning and supply chain management. To find jobs I use Indeed.com and this is the search query I use. I based a term project in business intelligence on the problem of finding good search terms based on course descriptions.
But I will digress from making this more personal. Basically from the stand point of one line job titles, there isn't one for the line of work he is in. The obvious ones are to frightening to the masses. Maybe it is just our culture today where "Math" is a four letter word.
He says he is not a lot of things, but OR person isn't one of them. In fact, what he does do sounds very much like OR to me. Do you think OR is a scary term for the masses? I find saying I do Operations Research works with many people.
It is a good time to be in the IE/OR job market. Predictive analytics is very big, even as supply chain has decreased a bit since the glory days. One firm I consult with is hiring a person like you, for example (http://www.firstfuel.com/home/staff_scientist).
I am not proud of its length, a by product of the poor vocabulary that summarizes my skills. Instead I have to list the words that are most likely to be associated with my skills. http://youtu.be/qiPc1mbRCxs
The OP has so many different business cards; there's
some pathos and poignancy there.
What he is talking about has some examples that have
been quite successful:
(1) Oil Refinery Operation. For input to your
refinery, out back have, for each of several
varieties of crude oil, some millions of gallons.
For output, look at the market for the various
possible products and the prices of each. Then your
mission is to decide how to process the different
varieties of crude oil to maximize the profit.
Early on this problem was attacked with linear
programming, and some mainframes were sold. Of
course, the problem is nonlinear, and there has been
a chemical engineering professor at Princeton who
has worked on this problem, and at least one of his
students got a job in Houston.
(2) Airline Scheduling. There's a lot of money to
be saved there, and the OP gives a good high level
description of that problem. At times the problem
has been attacked seriously by groups at least at
MIT and Georgia Tech.
(3) Military. During the cold war, there was a lot
of interest in various topics in applied
mathematics, including operations research, in a
radius of 100 miles of the Washington Monument.
Indeed there was a company, Operations Research, in
Silver Spring that did some 'max-min' game theory
with saddle points, Sion's theorem, combinatorial
optimization, etc. There were applications of
optimization by the Institute for Defense Analysis
for the US DoD Joint Chiefs of Staff.
(4) Feed Mixing. A classic textbook problem in
linear programming is feed mixing, and there have
been rumors that at least one major animal feed
producer takes this work seriously.
(5) Worker Scheduling. Airlines, hospitals, and
maybe even fast food restaurants can get some
significant savings via careful worker scheduling.
But such work encounters some difficulties:
(1) Data and Software. Too often the work requires
some custom input data gathering and some custom
software writing. Weeks or months of such work are
not welcome for some one-shot question.
(2) Algorithm Power. Too often one wishes for an
algorithm that shows that P = NP with a polynomial
of small degree with small coefficients. Of course,
the question of P = NP? remains one of the grand
challenges in pure and applied mathematics. Instead
of such an algorithm, too often one must look for
and exploit special problem structure, write some
custom, one-shot software, and struggle. The people
paying the bills don't like to see the struggle,
even when it is successful. More welcome is just to
push a button, "Optimize" and get a best possible
answer.
(3) Uncertainty. The OP is correct about the role
of uncertainty: E.g., the Dean of Engineering at
MIT, Tom Magnanti, gave a Goldman Lecture at Johns
Hopkins on designing a large IP network, e.g., a big
chunk of the Internet. Yes, it's a big problem in
'combinatorial' optimization as in, say,
George L. Nemhauser and Laurence A. Wolsey, 'Integer
and Combinatorial Optimization', ISBN 0-471-35943-2,
John Wiley & Sons, Inc., New York, 1999.
Yes, these problems are apparently the original
motivations for the question of P versus NP.
At times companies have tried to attack this network
design problem. There was work in PLano, TX
associated with SMU, some early Bell Labs work, and
a Cisco effort to help with multi-protocol label
switching (MPLS).
Well, much of the real challenge of this network
design problem is the uncertainty: That is, we know
that the traffic and network capacity will be
growing quickly and that we will have to continue to
make major changes in the physical network. In
principle if we had a probabilistic description of
the growth, then we could minimize expected
discounted cost over time. Alas, we don't have that
probabilistic description, and if we did mostly
using it would be too difficult for the algorithms
and computing.
More generally for the real world I see three
problems, one need, and one solution:
Three Problems.
(1) Professionalism. Such applied mathematics is a
technical field in part trying to be useful in the
real economy. There are other technical fields
doing this, but often they have a big advantage of
'professionalism', that is, government licensing,
peer review, official continuing education, code of
ethics, and liability. The practice of applied
mathematics has none of these and, thus, is taken
much less seriously.
(2) Interface. Large US organizations, one big
enough to pay for such applied mathematics for their
internal use, are still organized much like Henry
Ford's factory floor 100 years ago where the
supervisor is supposed to know more and the
subordinate is supposed just to add routine effort
to the work of the supervisor.
So, there is a severely awkward interface between a
subordinate working as an applied mathematician and
a supervisor who does not understand the applied
mathematics. And, unless the CEO and COB are such
mathematicians, going up the management chain there
must always be such an awkward interface.
The in-house legal staff solves this problem with
some aspects of their professionalism that the
applied mathematicians don't have.
Further, a norm in such a hierarchy is that the
supervisor's job is just to do what has been
assigned by their superior; making some innovative
application of applied mathematics is not part of
the job description; and pursuing such a project and
failing could ruin the supervisor's career.
Also, no one had their career ruined from failing to
make an innovative application of applied
mathematics. And if a supervisor somehow does make
such an innovative application, then every
non-mathematician up the management chain to the COB
can be afraid of their job.
Really, then, nearly only a secure CEO can sponsor a
project in applied mathematics that is serious for
the company, and only a small fraction of such CEOs
will want to put such a project on their calendar.
(3) Power.
In US business, the top few people have a lot of
power, want to keep it, and don't want it
challenged. To them a project in applied
mathematics can be a nuisance to be swatted down
like a fly.
So how does computing solve the problems (1)-(3)?
Awkwardly. The best situation is that the company
is just a computing company -- Microsoft, Adobe,
Intuit, Google, Facebook, etc. Otherwise usually
the computing is so important that the non-technical
people in the company struggle to work with the
computing people.
The Need.
In broad terms, computing has often programmed what
people did before manually. So, what was to be
programmed was well understood. Now that work is
slowing, and for more progress computing will have
to program work that never was done manually and,
thus, is much less well understood.
Then there is a challenge: Just in computing, as we
move away from what was understood manually, we are
left without means of knowing what the heck we are
doing.
Let's take an example, finding a spacecraft
trajectory to Saturn. That was never done
manually. So, how was it done? Sure, with some
mathematical physics, ordinary differential
equations, and some numerical methods for those
equations. With that work done, the corresponding
software could begin. We were quite sure that the
software, if written as specified by the physics and
math, would work. So, it was the physics and math
that let us know what we were doing.
Then, sure, in part computer science has tried to
move into such applied math and, at times, the
physics.
Here's the need: More progress in applying
computers needs more use of math so that for good
solutions to more real problems, never solved well
manually, we can know what software to write and be
more sure the results will be good. That is, the
math does the logical connection from the real
question to the real answer, and the computing then
implements the data manipulations specified by the
math.
The Solution.
I believe that the solution for computing and
applied math has been presenting itself via some
good examples. The theme is, the CEO needs to be
one of the main technical guys. So, the founders of
Intel, Microsoft, Google, and Facebook were the main
technical guys. For applied mathematicians,
consider J. Simons at Renaissance Technologies and
A. Viterbi at Qualcomm.
So, for both future applications of computing and
for careers of people studying technical fields
without solid professional support, the path forward
is for the technical person to be a company founder
instead of an employee with a stack of many
different business cards.
The opportunity is there, but don't expect the
currently powerful non-technical guys to reach out
with a welcoming hand!
Final point: For an entrepreneur with a valuable
application of some powerful mathematics and with
current attitudes in business, just let the
mathematics be an advantage in getting a better
solution for the real problem but don't mention the
mathematics and, instead, let everyone else just
assume that all the technical work was just routine
software.