I have been using Mathematica for almost a year now and I am still learning about functions that make me kick myself for not knowing earlier. For example, I wish I had known about the functions ToString and ToExpression earlier. I would like to take the time to learn as much about the Wolfram language as possible, but I do not know where to start. I am aware of the fact that if the Documentation Center were a single book, it would run over 50,000 pages, so its impossible to learn all of the nearly 6,000 functions in Mathematica. Here are some of my thoughts and goals:

  • learn the basics of the language. So far I have gone through most of the functions in the documentation center on the Elements of Lists guide, but the problem is that I don't understand how some of the functions would ever serve any practical purpose or how I could use them in my own code.

    • For example, I don't understand what an application of SubsetPosition might be.
  • go beyond the documentation center with any good books meet the following criteria:

  • I do have some experience with computer science concepts such as downvalues/upvalues, scope, closure, functional programming, procedural programming, object-oriented programming, lazy vs eager evaluation, etc., but I also find it hard to understand the usefulness of the basic functions in the Core Language And Structure Part of the Documentation Center.

  • I am looking for books like the Mathematica Cookbook (free link: https://math.bme.hu/~jtoth/Mma/Mathematica%20Cookbook.pdf) which I have been enjoying reading online for free in PDF form but it is as up-to-date as I would hope.

  • I have attended 3 Wolfram University Study Groups (4 if you count the upcoming Differential equations study group) and multiple wolfram university courses recorded on Vimeo such as Data Visualization in the Wolfram Language.

  • The gist of my goal and question is that I want to be able to take the examples in the Documentation Center and make something with them (especially functions like SubsetPosition that I don't know how to use).

  • I've spent time at the Wolfram Programming Lab, read the Fast Introduction for Programmers, the Fast Introduction for Math Students, and an Elementary introduction to the Wolfram Language.

  • I've also participated in the Wolfram Community site and submitted a function to the Wolfram Function Repository called PlanckUnitConversion that was recently published.

  • I've also completed Wolfram Challenges and got a high speed score on Antipodal City. I want to become more familiar with how to use Mathematica for calculus, the solving of algebraic equations, linear algebra, physics, chemistry, geography, graphics, data representation, natural language input, and computer programming.

  • 1
    $\begingroup$ The documentation question aside, I think you might benefit from a general introduction: Search mathematica.stackexchange.com/questions/18/… for the books by Wagner or Shifrin or the Introduction to Wolfram Language (by Wolfram, may be too elementary) or The Fast Introduction for Programmers. These are all available online. -- I don't know how to use SubsetPosition either. Maybe I would if I looked it up. $\endgroup$
    – Michael E2
    Nov 14, 2021 at 2:14
  • $\begingroup$ I've added some more details of what I've done with the Wolfram language. $\endgroup$ Nov 14, 2021 at 2:26
  • $\begingroup$ Learning by doing is the best approach. You seems to have already been taking it, but you do not indicate what is your goal, prime objective. Perhaps clarifying it to yourself will add motivation? $\endgroup$
    – yarchik
    Nov 14, 2021 at 7:13
  • $\begingroup$ I want to get better at using it for math and science projects. $\endgroup$ Nov 14, 2021 at 19:57
  • $\begingroup$ Find projects or questions (either your own or help others here), when searching for an answer and you find a function check out the related functions listed at the bottom, check all examples and maybe break down the problem to see where the bottle neck is - atleast what I like to do. GL $\endgroup$
    – Teabelly
    Nov 15, 2021 at 17:39

1 Answer 1


Read everything here and here. Beyond that see check the documentation for built-in symbols you use as needed.

  • $\begingroup$ I've been working on reading the first tile that appears that the Documentation Center when you click on Language Overview with the guides for Lists, Expressions, Associations, Variables and Functions, Rules and Patterns, Functional Programming, Procedural Programming, and String Manipulation. The only thing I don't know to remedy is if I click on the guides for List Manipulation, then Displaying and Visualizing Lists (Data Visualization), then I get overwhelmed because there's still a lot more to cover but I want to learn it. I hope my quandary is clear. $\endgroup$ Nov 15, 2021 at 1:32
  • $\begingroup$ So far I have covered the guides Constructing Lists and Elements of Lists. $\endgroup$ Nov 15, 2021 at 1:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.