Group Abstract Group Abstract

Message Boards Message Boards

8
|
74K Views
|
55 Replies
|
95 Total Likes
View groups...
Share
Share this post:
GROUPS:

What are some real-world applications of Mathematica?

POSTED BY: Jonathan Kinlay
55 Replies
Posted 8 years ago

Hey guys, just to revive this topic. I am a mathematics graduate and I have used Maple and Matlab as the university offered the license for both. I used to use Wolfram-Alpha and wasn't familiar with Mathematica, however, I got a copy of it in 2016 and started practising with linear algebra, complex analysis, number theory, several variable polynomials and general calculus. During my learning curve, I found it quicker to master and ended up doing none maths stuff like linguistics, animal data, country info, forex trading etc. I became hooked and have continued to use it even though I am not a researcher or physicist. I like how it is a blank sheet and hey presto you put the Mathematica syntax of anything properly, boom here is your answer. Comparing to Maple, I liked Maple but hated the fact you have to load a package e.g (with LinAlg) or (with differential geometry) whereas Mathematica you just type your wolfram syntax on the page and boom Bob's your uncle. With Matlab, you type in the editor sheet and then run the code..... I used it for numerical analysis and some linear algebra. Haven't bothered with it since my 2nd year and never used the symbolic toolbox.

POSTED BY: Tonde Kush
POSTED BY: Jonathan Kinlay
POSTED BY: Jonathan Kinlay
Posted 11 years ago
POSTED BY: David Keith

Frank, if I were to summarize as follows:

Mathematica's distinct competitive advantage lies in symbolic logic and symbolic manipulation and its principal areas of application are those in which such features are of primary importance, such as mathematics and mathematical finance. Everything else is just "me-too" functionality, of no special significance.

Do you think Stephen Wolfram would agree? What do you think he would argue?

POSTED BY: Jonathan Kinlay

I'm not an expert in Matlab. I've used it for a couple on-line courses, including convex programming and computational neuroscience.
I think that Mathematica's symbolic manipulation is a distinct advantage but I think there are other advantages. Mathematica supports procedural, rule based and functional programming. Matlab only has procedural programming. Also, in Matlab, the core data type is a 2nd rank matrix of real numbers whereas Mathematica is more general. I started an online course on probabilistic graphical models but dropped it because I got frustrated with trying to deal with higher than 2nd rank objects in Matlab.

POSTED BY: Frank Kampas

What about the annoyance of having cells, structures, and arrays (matrices?) which are just 'list' in Mathematica.

POSTED BY: Sander Huisman

Yes, it was the cells and structures that drove me crazy in the probabilistic graphical models course.

POSTED BY: Frank Kampas

Frank, I would certainly argue that symbolic manipulation is a core competency of Mathematica and an area in which it enjoys a distinct competitive advantage. Question is, is there anything else?

POSTED BY: Jonathan Kinlay

Many! What about calculations with regions? How about GPS data and plotting them on maps?

How about the integrated knowledge? You need the viscosity of ethanol? Boom there it is! You need the wind direction in honolulu in christmas eve in 2004? here you go! You need the volume of dodecahedron? Done! largest building? check! Mountains? Yes! Bridges? jup! All the stuff you can imagine for any element or isotope? Sure thing! genomes, planets, volcanoes, countries, cities, calendars, aircrafts, airports, dictionary, ...... This is EXTREMELY useful. Not only do you have acces to it directly, it also is immediately in a format that you can work with, no need to import files and 'decode'....

POSTED BY: Sander Huisman
Posted 11 years ago

My co-question in this regard: do someone think that the very concept of 'symbolic manipulation' is friendly for anybody outside WRI (sub)world? I'm not saying about attempts to make "introductory explanations" with the concepts of the same flavour.

POSTED BY: Timur Gareev

Bianca - oh, I forget to thank you for the anecdotal evidence in favor of Mathematica in the context of physics research.

I wonder, is Mathematica the market leader in that field, would you guess? Is it a mix of the usual suspects? Or is there some dominant market player, like Solidworks in CAD?

POSTED BY: Jonathan Kinlay

No idea, sorry. I'm sure it strongly depends on the sub-field (I'm in theoretical solid-state physics) and the university or the "tradition" of the research group. We use a lot of Fortran because there is an existing code base and it makes very little sense to translate it; we also use both commercial and open code from other groups which is all written in Fortran. One of our projects is in C. Any code that has to be fast has to be compiled, so those two would be the natural choices. Smaller pieces of code like scripts for analysis are a mix of different shell flavors, awk, Python, Mathematica... basically depending on who wrote it and whether it's supposed to run on a Linux cluster or on a Windows pc. Gnuplot is also quite popular for quick plots as well as publication figures, and a few people like Origin. As for Matlab: No license -> no usage.

POSTED BY: Bianca Eifert

In Mathematica, symbolic manipulation is part of the core functionality. In Matlab, it is an add-on.

POSTED BY: Frank Kampas

Bianca,

I largely agree with your point about Mathematica providing a framework for add-on products, rather than a stand-alone application. (That said, I am not 100% certain that WR would agree - or, rather, I think they would like it not to be true, somehow: perhaps through the use of CDF or cloud-based applications.)

Anyhow, everything you said applies equally to competitor products like Matlab. So the question becomes, what are the specific advantages of Mathematica in relation to its immediate competitors? In which areas of application does it excel? Are there any? Or is the Swiss Army knife analogy apposite?

POSTED BY: Jonathan Kinlay

You're absolutely right, my points above won't give us new insight when comparing Mathematica to Matlab. You know, it's really very telling that we instinctively consider Matlab to be the direct competitor (and I'm sure it's true if you do some market research). Because if we actually considered the Wolfram Language "another programming language", then we'd compare it to Python, Ruby, R... Maybe not to C or Java, but any of the highly abstracted interpreted languages would seem like a natural point of reference.

I do believe that Wolfram Research wants to go in a direction of establishing the Wolfram Language as a language, I think that's quite obvious. Let's see what becomes of that. It's a great tool by any name.

Personally, I can't give you any thoughts on Matlab because I've never used it - quite simply because my university has no site license, and it doesn't seem sufficiently different from Mathematica to make me want to buy a personal license. (Certainly not when there are so many languages out there that I can learn for free.)

POSTED BY: Bianca Eifert

As far as Matlab vs Mathematica, it should be noted that there are free online courses that teach Matlab and others which use Matlab. In many of these courses, a temporary license is provided. I've suggested to the sales team that Wolfram Research do something similar but have been told that the videos provided on the web site are just as useful. I don't agree with that statement.

POSTED BY: Frank Kampas

I suppose the free cloud plans may be useful for someone who just wants to try out the language...

POSTED BY: Bianca Eifert

I've read this thread with great interest, and just wanted to say that I feel @Eric Rimbey has touched upon a very important point. We can't really compare the Wolfram Language to other programming languages in a context of commercial software development.

With other languages, you can create a stand-alone application that your customer buys and uses. Emphasis on stand-alone. There may be all sorts of challenges on the developer's end of things: Packaging interpreters or libraries with the final product, or buying additional tools to do something-or-other. But the customer shouldn't worry about any of this. (Shouldn't even notice it, ideally.)

With the Wolfram Language, the user basically needs a Mathematica license. Is your application amazing enough to push that additional cost and hassle on the customer? No? Well, then you can only sell to existing Mathematica users. That means that the developer is confined to producing add-ons to an existing software suite. There's nothing wrong with that at all, but it's a completely different market compared to software development done in other languages.

In some fields, this may not matter because Mathematica is wide-spread already. In other fields, CDFs or a web service doing some computation on the seller's servers may suffice, and a stand-alone program isn't even the target. Those are the fields where you will find successful Wolfram Language applications.

By the way, this is what people usually mean when they say that the Wolfram Language isn't really a programming language.

Edit: I would like to emphasize that for all the other cases of "money changing hands", this is not particularly relevant. I just wanted to comment on the "programming language" aspect of Mathematica.

POSTED BY: Bianca Eifert

You can produce Wolfram Language stand-alones applications that run without license via wolframscript. Apparentely very few people know it, and even less people know how to do it. I run my wolframscripts everywhere I can with no license.

I also recently discovered this great way to deploy!

POSTED BY: Jack I Houng

Jack, ditto:

Are you able to give some specific example of how Wolfram script enables you to deploy stand-alone applications? I'd like to dig into it a little more, as it may be that I (and others) are missing a trick...

POSTED BY: Jonathan Kinlay

Are you able to give some specific example of how Wolfram script enables you to deploy stand-alone applications? I'd like to dig into it a little more, as it may be that I (and others) are missing a trick...

POSTED BY: Jonathan Kinlay

Szabolcs, yes I caught the distinction and blurred it, deliberately. Because I was trying to frame the question in a broader context - how widely in Mathematica (WL) used in physics research, generally? You said that your

impression as a physicist is that should be a significant percentage

Well, thats the point. My impression as a professional econometrician might be that Mathematica is widely used in econometric research. But that impression would be wrong. How do I know what? Because it is customary for researchers in that field to mention in their research papers the software used in the research (not always, admittedly). And, as I mentioned, I know quite a number of them.

Sander's experience mirrors my own in this regard, it appears.

So the question stands: can anyone (an academic researcher in physics) offer any anecdotal evidence about the usage of Mathematica in that field?

POSTED BY: Jonathan Kinlay

I'm a PhD student in physics, and in our group, we use Mathematica to analyse data and prepare figures for publications. We don't publish as CDF, because the relevant journals want PDF. We could certainly go the extra mile and offer a CDF for download as supplementary material, but so far I haven't seen that. (Haven't specifically looked for it either though.)

We also use Mathematica in teaching, mostly because the excellent documentation system makes it so easy to grasp for complete novices, and because it already comes with all the functionality that you might have to install separately in some other languages. (Like graphics capabilities in 2D and 3D, or all sorts of specialized functions.)

POSTED BY: Bianca Eifert

Eric,

Let's dispense with any continuing misunderstanding of the criteria I specified to qualify an application as "real-world". I did NOT say that the application had to be "re-sold" in order to qualify. What I said was that "money changed hands". This could involve re-selling (and I gave several specific examples of such applications in subsequent posts) or it could involve consulting fees. That deals with the straw-man objection that my criteria would disqualify Excel as a real-world application - because vast sums of money have been earned in consulting fees in relation to projects in which the deliverables included an Excel workbook and/or VBA code. As if that was not enough, I went on to make clear that "money changed hands" also included applications that were developed by paid researchers, because their salaries constituted money changing hands. Enormous sums are expended on the salaries of Wall Street quants, almost every one of whom, in my experience, makes extensive use of Excel. So - subject closed.

You asked what my perspective is. It is to find an answer to the simple question: what is Mathematica for?

I went on to make the specific point that, yes, of course, you can treat Mathematica as a Swiss Army knife, capable of duplicating what can be achieved in Excel, Powerpoint, Solidworks, or any number of other software programs. But if that is ALL Mathematica is, then frankly it's pretty unimpressive; because not only are there existing, often less expensive products that can do these things - but they can often do them more easily, or better than Mathematica. Sure, you can manipulate a spreadsheet and do Pivot Tables in Mathematica; but why on earth would you? Just because you can?

So the question I am really asking is: what are the core elements of Mathematica that make it unique, exceptional or which give the user a competitive advantage vis-a-vis other software tools? And I went on to ask the question, are there any such competencies, other than mathematics itself, specifically symbolic logic?

POSTED BY: Jonathan Kinlay
POSTED BY: Jonathan Kinlay

It is quite limited indeed; I, myself, have used it throughout my bachelor, master, PhD and now postdoc. But I was already using before in high school too. But I'm one of the few who uses Mathematica, 'everyone' is obsessed with Matlab! And also books tend towards Matlab... I think it is because a lot of people think Mathematica is only for equation solving, and have no idea it can do (almost) everything Matlab can do.

POSTED BY: Sander Huisman

Honestly, I think it's plain old intertia. When first walking into an environment (class or research group) where either Matlab or Mathematica is used, most people won't use the respective other program just for the heck of it. They will use what everyone else is using, which makes a lot of sense (learning and exchange). Matlab and Mathematica are just too similar to steal users from one another in significant numbers, they can both only hope to get to the newbies first and gain a foothold that way.

POSTED BY: Bianca Eifert

True indeed! My previous university switched from Maple to Mathematica 1-2 years ago. So now students will 'grow up; with it (I guess). Though for the experimental physics I've seen very little usage of Mathematica, for theoretical, yes, lots of use!

POSTED BY: Sander Huisman

Can this really be correct, does anyone know? Can it really be true that Mathematica's penetration of the market for physics research is so limited?

David is referring to publishing documents or articles in the CDF format. This is something completely different from using Mathematica as a physicist, and it's different again from publishing Mathematica packages related to physics.

It is very hard to estimate how many physics journal papers may have used Mathematica during research because Mathematica is not typically acknowledged. My impression as a physicist is that should be a significant percentage ...

Regarding packages related to physics, just take a look at hepforge: there are plenty of Mathematica packages there. https://www.hepforge.org/projects

POSTED BY: Szabolcs Horvát

Yeah it is different, but if one is totally fixated on Matlab, one will not publish it in Mathematica CDF files....

POSTED BY: Sander Huisman

Physicists may use Mathematica for calculations, using notebooks as scratch pads or programming sheets. But then they copy out the results and insert them into a LaTex file to eventually produce PDF files, which they load up to the physics archives. They don't use it that much for communication - something it can be really good at. This is mostly my guess so maybe others can give more data. And perhaps there are a few who can see Mathematica applications as a long term development platform but it's a little like the density of intelligent live in our galaxy. Why aren't they here?

One problem may be that there are not enough technical people who have Mathematica. You can't count on communication in general with Mathematica notebooks. CDF documents were supposed to be the solution. In my opinion they are not good enough yet. It is not possible to send packages and style sheets with a CDF document and any one who has developed capability with added routines will probably use them. Of course, once many people see good CDF documents they will probably go to Mathematica - so why not just go to Mathematica notebooks in the first place?

There is a need for people to see good long term applications for accumulating capability. There may be good ones out there but they may also be quite private. Who wants to share their proprietary expertise?

The reason to choose CDF over PDF would be a desire to include interactive functionality. But if you publish a paper as a PDF, you can still offer a link to additional material: A Youtube video, an app on your website, or maybe a publication on the Wolfram Demonstrations Project (hey, why not). And yet, with a traditional paper, you're on the safe side: People who think that the interactivity is too flashy and maybe not entirely super serious can just ignore the link (relax, it's just a footnote, the actual paper is totally super serious).

That aside, most researchers are just not free in how and where they publish: If it's not in the "usual suspects" group of journals (preferably with a high impact factor) and you can't find it through the field-relevant search portal, you might as well publish on the sidewalk. In chalk. Before the rain.

For more informal communication (e.g. direct exchange between coworkers), a Mathematica notebook will often do just fine, and generating a good-looking CDF is a bit of an unnecessary step. And if your coworker doesn't use Mathematica, you're better off finding a data and presentation format that both of you can actually edit.

POSTED BY: Bianca Eifert
Posted 11 years ago

I totally agree with this post and it seems to me that I share same (positively inclined, by the way) concerns with Jonathan. There is 90% of the concern on the part of business model and communication strategy. I would say, it seems there is a lot to be done to UNDERSTAND the behavioural patterns of new (potential) users, especially in corporate (!!!) sector. I'm not quite sure that target users are well-defined at all - there is a nice mixture of cure-it-all and niche ad-hocery. Self-reference criterion is almost always a poor adviser, but I remember a lot of caveats on my road to Mathematica (absolute independent on any background or tutors advices). I believe that I've passed the starting 'death valley' of the road, but looking back, I feel surprised that I passed them. And these are not only technical issues. So "sleeping potential" of MMA is a great task for research, as marketing so academic. (I'm not saying here about simple QWERTY effects and network externalities that are obvious form many posts).

POSTED BY: Timur Gareev
POSTED BY: Pedro Fonseca
Posted 11 years ago
POSTED BY: Eric Rimbey
POSTED BY: Jonathan Kinlay
POSTED BY: Jonathan Kinlay

variability is a natural phenomenon. uncertainty is in the human mind. today it rains, tomorrow, it doesn't. that's variability. a forecast of 40% probability of rain illustrates uncertainty. Mathematica was used to "deconvolve" uncertainty from variability. http://scitation.aip.org/content/aip/proceeding/aipcp/10.1063/1.54746

POSTED BY: Frank Kampas

I used Mathematica for the launch risk analysis for the Cassini mission to Saturn. Perhaps that should be regarded as an "other-world" application. My role was the uncertainty analysis. I used Mathematica for prototyping calculations and for separating variability from uncertainty.

POSTED BY: Frank Kampas

Thanks for posting it here. I think the discussion it generates is interesting. StackExchange would not have given room for such a discussion. I wanted to make sure you understood that your post was not closed on SE because people object to it. It was closed because the format didn't fit.

POSTED BY: Szabolcs Horvát
POSTED BY: Jonathan Kinlay
POSTED BY: Sander Huisman

I find your definition of "real world" kind of weird:

"money changed hands" surely does not equal real-world. Because now you exclude basically all academics! A HUGE number of academics do there analysis using Mathematica/Matlab/...... without getting money for it! It is to publish something. But not directly getting money.

I'm one of the very few in the group that I'm working in that uses Mathematica, but if I compare speed of building software to do analysis, Mathematica trumps any Matlab implementation. Nearly all the code is shorter, more legible, and much faster to implement. I generally have little programs done while the others are still struggling to import some data or so.... Of course that varies a lot on what you do exactly!

POSTED BY: Sander Huisman

I will not go directly to the application topic, since I think that some background is of interest. Also, I don't have one specific application, but I will actually be talking of the application I do of it. So, I'm on the category (from David Park answer):

There are many more who use Mathematica in their work but many of them say it is very difficult to get others in their company to use it.

I work at the engineering department of a big commercial company, on the area of water treatment (we design, build and operate water treatment plants). I'm not a programmer, and my formal training (and day to day work) is on sanitary engineering (a specialization of environmental engineering).

Our typical engineering tools are MS Office and CAD softwares (besides some other specialized commercial softwares for very specific tasks, plus an ERP, etc.)

On most of my use of Mathematica, I can't say that it would be the unique solution, but, for me, it is the most productive solution, both in time and cost (which is the same thing, but also not exactly).

I basically started to use it as a MS Excel substitute, or an Excel on steroids. Excel is probably the most used tool in the engineering environment. It is so ubiquitous that, when a client, partner or supplier asks for some particular calculation share, they are expecting a MS Excel spreadsheet, and nothing else; no need even to discuss on it. But, as soon as we want to evolve on our use of this calculation tool, it starts to become too much of software engineering (inventing strategies to accomplish things that it was not designed for) and not our own field engineering. I think of this limitation as equivalent to trying to build the ultimate slide ruler, linking lots of sliders, rotating disks, translation curves, etc., into a single cardboard..., when computers are available... (its a mental image I have..., that kind of graphically shows the absurd limitation). I have tried Matlab several times in the past, but never found it adequate for my needs (I guess it depends a lot on the details of what the person exactly does).

Introduced to Mathematica 5.2, I started using it more and more, and, at the same time, adventuring more and more on computation fields that I would not have dreamed of. And yet, I have been working on the same engineering field for the last 17 years.

While using Mathematica, I started to see my thinking process change, I would even go to the point of saying: radically change. I passed from one variable to full space exploration, and from (fictitious) exact engineering, to taking into consideration uncertainty and measuring the risk.

Here's a time sequence that, while being false/simplified, in someway explains the use I gave and give to Mathematica:

  • prototyping tool for algorithms being programmed in VBA (simple programming)
  • exploration of analytical solutions for some differential systems (true CAS)
  • package development for some calculations, substituting Excel on the daily work, but not package selling (automation, more sophisticated programming work)
  • Dynamic interfaces for client exploration of our design concepts (Dynamic, Manipulate, etc)
  • CAD interfacing for direct calculation of 3D networks (graphs functionality, etc)
  • analysis of temperature, humidity and wind direction at multiple sites. As a funny example, for instance, checking wind direction predominance, to determine floating debris accumulation points, on slow flowing water systems. (use of the online curated databases)
  • image processing of 2D data acquisitions from laboratory experiments (use of the image processing capabilities)
  • machine learning algorithms for multiple tasks, including on image data / film processing (use the machine learning new capabilities)

Obviously, this is a very short list, and does not exactly reveal all the uses I gave to it since version 5.2. But I think that one interesting thing it reveals is that, along the addition of functionality, I have added the new fields into my daily work AND NEED, while still being on the same job.

Would I have guessed that, one day, I would be applying machine learning and image processing to my daily work? Definitely not. It is not my core field, and very far from it. So, is it a real need or a need that I have invented? I think that there's no actually distinction of those two, but I can say that the use is real, and the cost (learning curve) / benefit has been extremely advantageous (when I say learning curve, I'm thinking on it being so short for the new fields that are added, that I can just apply them without actually thinking that I'm learning them). Do I really learn this new fields to the point that I can say that I master them? As with most other tools, in order to avoid mistakes, its application needs some intelligence. But, I think that the equilibrium I'm getting is of extreme benefit.

You mentioned CAD capability. Does it make sense or not that Mathematica goes in that direction. I can say that I'm eagerly waiting for a more complete regions framework (mesh and non mesh being mixed by boolean operations, etc.), and for it to be faster, for a very specific need I have on the CAD world; and I can say that I'm pretty much at ease with CAD software, working, on average, at least one hour per day, and having programmed some add-ins for some CAD packages). Of course that Mathematica is (currently?) extremely far away from covering the functionalities of CAD tools. And also that CAD tools are currently very far away from covering computational environments' functionalities. And, although connection seems the obvious solution, some particular applications (like mine), work better if the integration is absolute. I'm even thinking on candidating to the next Wolfram Innovation Summer School, to help me on one of my less standard projects.

So, although I haven't mentioned on my list: Regions, FEM, and other of the new stuff, I know that for a lot of them it is just a matter of a few more months for me to start to need them... Some I haven't used because they are still not well fine tuned. Others, like FEM, are a little away from my preference, which would have been FVM, but still a good addition, for which I have practical uses in mind.

But, for instance, why don't I just use a specific image processing tool from the market? I think that the answer is integration. If it is integrated on a well known environment, I can just start using it, with a very favorable learning curve, and mixing up with other fields, without being a programming specialist.

To answer directly to your post:

applications in mathematics (symbolic logic)

Not my case

Mathematica's primary usefulness is in encouraging a kind of intellectual dilettantism

I don't think that this is my case. I apply it to real life cases, from which I take monetary benefit, on a very competitive environment.

of the hype around Mathematica

I have always found it interesting that one can use superlatives for a lot of products, including a lot of software products used on the engineering field (of any kind and any cost), and yet, for some other products, its use is judged abusive and offensive. I guess this comes from the duality and the distance, on many aspects, between the commercial and the academic world.

Mathematica somehow fails to live up to its apparently unlimited potential for encapsulating creative thought-product across an almost unlimited span of human intellectual endeavor

I think that all tools are doomed to fail on such a big phrase. But, I give credit for trying, and also, for not being so far away from the target (in relative terms). Considering that I make real use of some functionalities that I never thought I would be using, I think that the tool has achieved something. Do I see shortcomings? Yes. A lot. And yet, I just keep using it.

(i) money changed hands (e.g. a commercial product was sold, or consulting fee earned) ; and

Working in a commercial environment, on the modern world, while producing something that doesn't bring money back, is currently impossible. So, my work with Mathematica is being consciously paid for.

(ii) an alternative solution was considered and Mathematica preferred for specific reasons ("it was the only software we could afford or that was available to tackle the job", is not a valid reason to qualify the application as real-world, according to this definition)

Alternative solutions are constantly being used by my peers. I have used alternative solutions, and I'm forced to go back to them from time to time. And I can't emphasize more the "forced" word.

And, from David Park's answer:

1) Mathematica and the Wolfram Language are difficult to learn.

I think that difficulty is relative. I think that it has to be seen as an effort / benefit ratio. What happens is that the effort is not always possible. But passing away from the benefit is less and less affordable.

One thing they might do is to give users freer access for adding to the documentation, maybe like Wikipedia

I agree. Like two sections: WRI and Community section

3) Mathematica is not as stable over versions as they nonchalantly claim.

Probably true. I, myself, prefer a good design to a backwards compatible design. I think that this depends on how you use it. If we make a lot of development on it, having to review it every single time there's a new version, can indeed be annoying. It's not my case, and I actually wish they were more actively correcting not so well design features.

6) Diffuse effort. Instead of perfecting the "Application" model for building capability over time, Wolfram Research has been drawn into many other endeavors.

Indeed. Although, its clear that what is currently presented is a product that can cover many more user applications, and that, because of it, starts to get more known. Eventually new users bring money, and money brings development resources. I think that adding new entire fields, from one version to the other, is great. It is probably the balance between the maintenance of the existing ones and the development of new ones that is not fine tuned. On my personal case, what borders me is the fact that many bug reports (the ones that are really bugs), take so many versions to get fixed (and I'm talking of bugs that do have a fix, and not bugs that are on the edge of human knowledge). I have hope on the new momentum the fast release track has brought, and I'm just hoping for that equilibrium to be found.

So, some conclusions:

  • I use it on a commercial environment.
  • It allows me to do things that I couldn't do before using it.
  • It has been fun to follow Mathematica development, and to belong to its community of users.
  • Some fine tuning (including less bugs, etc), is in need...
  • ... and yet, there's still a lot of functionality and entire fields that I'm missing.

And, as Conficius said:

Choose a job you love, and you will never have to work a day in your life.

Mathematica helps a lot on that direction.

POSTED BY: Pedro Fonseca

2) Combining graphics is as easy as Show[{graphics1,graphics2,graphics3,..}] which is quite easy I would say ;) I've made many many Graphs in Mathematica, and never had a problem, and where necessary I made my own plot routine, which you can, really easily. I don't know any other products that supports such a customisable and wide variety of plotting routines! You can also write by default 'like a sheet of paper' right?

Graphics[{Blue,Rectangle[{0,0},{3,4}],Red,Point[xydata], Green, Line[xydata2]}]

I would say it is not 'extremely difficult' at all! very easy, just combine the primitives and plots you like using Show/Graphics/Graphics3D ! that's it!

3) I'm not sure what you are talking about, Lighting -> Neutral works as it should:

Graphics3D[Sphere[],Lighting->{{"Directional",Orange,{{0,0,4},{0,0,0}}}}]

and has always worked like this as far as I can recall. As far as extracting parts of graphic, I always remind myself this will be version specific, the primitives it creates might be different per implementation. So if you rely that it produces Rectangles, but now it gives rectangular Polygons (in another version), that should be easy to catch in subsequent version using a new rule. But I always try to stay away from these practices, it can be done, but that doesn't mean it should be done... You should customise directly using the plot routine and then combining with e.g. Show, or Epilog/Prolog.

4) Isn't the entire documentation available online?? http://reference.wolfram.com/language/ ?

POSTED BY: Sander Huisman

I challenge you to make the last graph of yours in Excel and in 10 'lines'! I think you just proved that it is really easy, all your examples are like 10 lines! I don't know any other software that can do that and still be reasonably readable and adjustable with such low amounts of lines.

Yes sometimes you have to wrap a Graphics around, and yes it is better to stay away from Epilog/Prolog if you combine some graphics, there is always room for improvement. But knowing that, i think it is very easy. I think your examples proof my point more than disproof it...

POSTED BY: Sander Huisman

What David Park writes is totally sensible: the built-in Mathematica syntax for graphics has definite limitations, especially for the newbie (and sometimes for the expert, too).

As to his example with the disappearing Text given in the Epilog of a Plot when combined with a Graphics inside a Show, the documentation for Show does provide the reason, under the "Possible issues" category, namely: "Show uses the options from the first graphic."

POSTED BY: Murray Eisenberg
Posted 11 years ago

David, just some thoughts:

(1) Difficult to learn. Mathematica was, for me, one of the easiest programming languages to learn. The sheer size of it, as you say, makes it time-consuming to become familiar with all of its functionality, but that is a completely different issue, in my opinion, than learnability.

(2) Difficult graphics. I'd really like to know which graphics-oriented applications you use that are easier than Mathematica. Granted, in specific contexts, like CAD-CAM, there are very powerful niche applications that outshine Mathematica in one sliver of functionality, but I've never worked with an application whose general graphics capabilities are broader or easier than Mathematica. And there is a great deal of what you call correlation. Mathematica's graphics functions all follow very strong patterns and conventions. There is a real disconnect here, because I don't recognize Mathematica at all in your criticism. Frankly, I don't know how it could be more like "drawing on paper"--that's almost literally how it feels to me.

POSTED BY: Eric Rimbey

I felt exactly the same regarding point #2...

POSTED BY: Sander Huisman
Posted 11 years ago

One thing they might do is to give users freer access for adding to the documentation, maybe like Wikipedia.

I would like to express my support to this idea. One example of another company doing this is the case of MySQL. Here you can see the official documentation for the SELECT statement and it is followed by user comments. Sometimes the comments end up being an essential to understanding the official documentation.

In regards to the original question of this thread, I work at an engineering company and I use Mathematica for:

  • Fully automated reports generation and sending my email
  • Development of tools for our internal use that run with the CDF Player (this requires the Enterprise license.)

And yes. I am sure that this could be done with different technologies, but I am also sure that it would take much longer to develop (if ever developed).

POSTED BY: Gustavo Delfino
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard