Message Boards Message Boards

GROUPS:

Idea for improving Mathematica's Language Rating

Posted 9 years ago
12411 Views
|
8 Replies
|
12 Total Likes
|

I few days ago I was looking at this chart comparing different programming languages:

annotated lang.rank<em>.plot.q1152.png

And I asked myself: why is our favourite language doing so poor? Is is popular in regards to the vertical axis (stackoverflow.com) but it does poor in regards to the horizontal axis (github.com).

It occurs to me that there are almost 10000 Mathematica open source projects in demonstrations.wolfram.com. If the authors of those projects could put the source of these demonstrations in GitHub, it would really help improve the perceived popularity of the language. And for new demonstrations, I would modify the "upload a new demonstration" webpage in order to encourage authors to send a GitHub link for the files.

Do you think this is a good idea?

The original image/article can be found here: http://redmonk.com/sogrady/

POSTED BY: Gustavo Delfino
8 Replies

Don't forget about Rosetta Code and Code Golf which often provide basic educational examples in programming. I must say though that many examples of Wolfram Language on Rosetta Code could be improved much which I hope will be handled by users on this great thread:

Rosetta Code Challenge & Wolfram Language

Folks there committed to new examples for now but I think it would be really awesome to post an improved code there too, for example due to new functionality or deeper language knowledge.

POSTED BY: Sam Carrettie

Quoting the original post:

Is is popular in regards to the vertical axis (stackoverflow.com) but it does poor in regards to the horizontal axis (github.com

The vertical axis doesn't include questions that appear on Wolfram Community. I wonder how much difference it would make to include them. However, ff other languages have non-Stack-Exchange communities, this would inconsequentlal.

If the authors of those projects could put the source of these demonstrations in GitHub, it would really help improve the perceived popularity of the language. And for new demonstrations, I would modify the "upload a new demonstration" webpage in order to encourage authors to send a GitHub link for the files.

Do you think this is a good idea?

I think this is a good idea, but would I think it would require more comments in the demonstrations' code. This may be quite an effort; crowdsourcing would help.

POSTED BY: W. Craig Carter

Another suggestion: It would be useful to have a large set of simple examples. This might be act as an unofficial extension do the documentation. Stackexchange and this Forum could be mined for a first set of examples. Crowdsourcing might be used tag the examples. Perhaps this might be hosted on WolframCloud.

POSTED BY: W. Craig Carter
Anonymous User
Anonymous User
Posted 9 years ago

Before my little rant I need to preface things by saying Mathematica is the right choice for me.

From the perspective of some one who chose Mathematica // Wolfram Language Standard Version to be the engine driving my personal Continuing Educational Endeavors I can give an example, not at all untypical, of my Mathematica Documentation experiences that came up in my today's self study sessions, e.g. ......?Set...Shift Enter.......in WL does not at all include this syntax:

Set [ lhs , rhs ]

This particular syntax context which is conspicuously absent, is both the Functions primary defining context and at the same time is absolutely necessary for understanding the language used to explain the Set Functions concept of it's HoldFirst Attribute.

I had to learn this Syntax ( Set [ lhs , rhs ] ) from Professor Richard Gaylord's second of three You Tube videos on Wolfram Language Fundamentals.

Firstly. I am sure Mathematica is the only choice for me, warts and all, but this sort of anecdote tends to provide ammunition for those around the water cooler wanting to take scoffing pot shots at Mathematica and Wolfram Language.

John Soper

POSTED BY: Anonymous User

This is an interesting and important question!

According to my experience there is - even among my colleagues which are physicists - no general perception of Mathematica as a programming language, but rather as a collection of (powerful) routines. And many postings in this community are telling this, which go like: "I have this and this problem, I put some stuff into a function (typically *Solve[])", I got a lot of error messages, and what does this "@@@" mean anyway?" Yes, when you need to solve a specific problem (and just this is the moment when most students hear about Mathematica for the first time!), you do not start learning Mathematica for its own sake. Maybe the introduction of "Wolfram Language" will make a change.

Ciao Henrik

PS.: Maybe my eyes are getting weak, but I cannot find Maple in the statistics above ...

POSTED BY: Henrik Schachner
Posted 9 years ago

It seems common that a few explanatory variables account for a substantial part of the behavior of a complex system.

It might be amusing and interesting if Mathematica could be used to discover and informatively display the contribution of each of those variables for a language in that diagram. That might also show which of those variables has the greatest effect on the ranking of that language and even hint at where to most efficiently spend time and energy to change the ranking. Such an interactive display might even draw attention to Mathematica, in a good way.

POSTED BY: Bill Simpson
Posted 9 years ago

That'd be nice to have. If I could have only one thing it would be clear examples of how to do "basic" things that are common to several languages in Mathematica, with the simplest possible syntax used. In other words, things that are less gimmicky and for show, more for productivity and ease of use.

Not intending to run down your suggestion, more expounding on my earlier comment. The statistical analysis would be interesting.

POSTED BY: Greg
Posted 9 years ago

I think that's a great idea. In addition, I'd like to see a large collection of recipes for common mathematical/programming tasks, organized and indexed on Github. For example, it would have been awesome if I didn't have to write the code below (to generate a list of values with a 'goal seek' target). It seems like a lot of the documentation and posts for Mathematica are more about how to use the language and less about these sorts of tasks.

x =.
begValue = 1;
endValue = 0.25;
listItems = 40;


f[1] = begValue;
f[n_] := f[n - 1]*x

x = Last[
   First[
    Flatten[
     Solve[f[listItems] == endValue && x > 0, x]
     ]
    ]
   ];

list =
 Drop[
  Flatten[
   Reap[
    Do[
     Sow[x^i]
     , {i, 0, listItems - 1}]]
   ]
  , 1]

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

Group Abstract Group Abstract