Questions tagged [guidelines]

General guidelines and best practices for Mathematica usage and programming.

Filter by
Sorted by
Tagged with
455
votes
37answers
101k views

What are the most common pitfalls awaiting new users?

As you may already know, Mathematica is a wonderful piece of software. However, it has a few characteristics that tend to confuse new (and sometimes not-so-new) users. That can be clearly seen from ...
27
votes
2answers
563 views

Custom atomic expressions - modern tutorial

Atomic but sophisticated expressions are all around for a long time: Graph SparseArray. More are coming with each new release, ...
18
votes
1answer
326 views

Any manual on cell grouping management?

Recently I come back to the problem of cell grouping and performed extensive search on this site and on MathGroup archive for information on how to use the possible values of the ...
15
votes
2answers
285 views

Hold attributes vs performance

Is there a reason to use Hold* attributes for functional code (e.g. no intention to mutate input)? I'd expect performance gains as in pass by value vs pass by ...
0
votes
0answers
126 views

Is there a beginners tutorial for Wolfram Engine users?

I was taking a look at WolframEngine. The fact that it is freely available, virtually making Wolfram tools and language accessible to anybody is very much attractive! Nevertheless, the first impact ...
6
votes
1answer
93 views

Understanding Dynamic, Refresh, and TrackedSymbols

I thought I had a pretty good handle on Dynamic, but some recent examples have made me suspect that I may have some misconceptions, and I am not finding good ...
36
votes
2answers
1k views

How to use the Testing Notebook to test a package without shadowing?

I think an important purpose of the new Testing Notebook in version 10 should be to test user packages (instead to test the builtin functions in the ...
47
votes
3answers
2k views

Is manual adjustment of AccuracyGoal and PrecisionGoal useless?

This is a problem confusing me for years. AccuracyGoal and PrecisionGoal are two options that I never truly understand and, to ...
18
votes
3answers
3k views

Programming Mathematica in plaintext, i.e. no formatting, non-notebook

I'm new to Mathematica and I've just begun reading Paul Wellin's Programming in Mathematica. The book, like many other books and online tutorials, revolves around using the notebook, with all its ...
30
votes
6answers
3k views

Mathematica style guide?

I encountered this site today https://code.google.com/p/google-styleguide/ regarding the programming style in some languages. What would be best programming practices in Mathematica, for small and ...
19
votes
3answers
553 views

Usage Examples for DynamicWrapper

I am looking for practical uses of the function DynamicWrapper . I read documentation and know whatever it says. I would appreciate a clear example of a useful ...
14
votes
2answers
538 views

Good clearing practices

I have been using Mathematica for about 2 years and I'm pretty ok to write and optimize my code. Wanting to improve my practice, I often look at code examples. However, I can not determine if there is ...
8
votes
1answer
113 views

Memoization and packages

I am working in a package on symmetric functions, that sometimes are quite expensive to compute. I use memoization extensively, but what is the correct approach for a package intended for the public ...
31
votes
3answers
13k views

Guidelines on giving readable names to variables [closed]

I know that one cannot use underscore to a variable name, like degree_of_The_First_Polynomial. But for a long variable name, it ...
13
votes
4answers
438 views

Renaming options of custom functions while preserving backwards compatibility

I have a package with many functions. There is an option name that several functions share. I feel that the current name of this option was not the best choice. I would like to rename it, but at the ...
30
votes
5answers
709 views

Unexpected behaviors in built-in functions

Existence of this topic is discussed in this mathematica.meta post. I'm sure I am not the only non-beginner in WL who from time to time finds themselves not being able to predict an outcome of a ...
166
votes
6answers
20k views

How to compile effectively?

What are the best practices of compiling functions? I understand that this is a vague question, but let me list some aspects that might trigger useful answers. Some of these have already been answered ...
30
votes
4answers
1k views

Resource management in Mathematica

I am using a library that has functions like createSomeObject[] and deleteSomeObject[obj]. It is an interface to a C language ...
6
votes
1answer
97 views

Conditional rendering of items

Let's say I have a column to display and each of its items can be hidden separately. Question: Is there a way to make it work without re-rendering whole column whenever a particular item is hidden? ...
3
votes
1answer
83 views

Application example of RuleDelayed in options

In this question: Options which require RuleDelayed , an example was given, where the an option has to be given as a RuleDelayed: ...
18
votes
2answers
424 views

Different strategies to get a clean Kernel. Quit, Exit, ClearAll, Remove, CleanSlate?

Often new users face problems with lingering definitions that, if unaware, may cause unexpected and frustrating behaviour. There are several answers that illustrate different aspects of the solution, ...
6
votes
0answers
225 views

Multipart package creation, development and maintenance [closed]

I am a physics major. I focus on theoretical and mathematical physics. After spending some time with Mathematica I found that it is not straightforward to create separate files for logically distinct ...
14
votes
2answers
493 views

Wolfram Cloud deployment obstacles

What are official restrictions about FormFunctions/general deployment contents? There are problems with many things which sometimes I have workarounds for but I ...
7
votes
2answers
143 views

Impact of Linkage and DistanceFunction on Agglomerate clustering

I'm using Agglomerate function to find clusters of my experimental points. I have about 20 points with 10 parameters each. It seems it works fine, but there are plenty of Linkage and DistanceFunction ...
10
votes
0answers
110 views

URL functions overload

All these functions seem capable of doing the same things: Import, URLFetch, URLSave, ...
35
votes
4answers
1k views

What are the most common (usual) ways to make palettes with non-trivial functionality?

What are the best (most robust and most convenient) ways to create palettes that can be installed permanently (using Palettes -> Install Palette...) and are safe ...
5
votes
0answers
67 views

Handling rendering delays gracefully

I moved the second issue to a separate topic: 162013 Please run the code sample As you can see there is a delay between the moment the calculation is finished and when the graphics is shown. And ...
12
votes
1answer
334 views

How to create (Header + Main area + Settings pane) notebook layout

cross-posted in community.wolfram.com The goal is something like in the picture below. Basic? I dare you to try to implement it in a manageable, scalable and flexible way. Requirements: The goal ...
3
votes
0answers
98 views

How to visualise Mathematica code and how to become a better coder [closed]

I seem to be using functional coding frequently. However, it does not come naturally and I usually copy from example, and then adapt for my own. How do you recommend I improve as a coder? I would ...
17
votes
1answer
355 views

Is building an event-based parser possible/reasonable in Mathematica (WL)?

Too long? Go to Problems section Background I like to learn by doing small, sometimes artificial, projects. Among other things I had 'parsers', and 'stream methods / streams in MMA' on my to learn ...
18
votes
2answers
1k views

How are Accuracy and Precision related Mathematica for a given operation?

The common understanding for Accuracy and Precision in English language is given by this figure. Inspired by this question I have a follow up question relating ...
11
votes
2answers
8k views

How to draw confidence ellipse from a covariance matrix?

I am studying a two-dimensional dataset, whose mean vector and covariance matrix are the following: ...
17
votes
1answer
996 views

What is the difference between MathLink and WSTP? Which one should I use?

What is the difference between MathLink and WSTP programs? Will the use of MathLink protocol be maintained or not?
50
votes
3answers
4k views

Changing Values in an Association using Map

I am trying to change the value of one key in an association based on the value of another key in that association. So if my association starts as: ...
6
votes
1answer
126 views

To TagSet or not to TagSet when using MakeBoxes

What is the difference between the following two: ...
12
votes
1answer
235 views

Clean package update for API/FormFunctions on Wolfram Cloud

Cross posted on community.wolfram.com (new comments) TLDR There is a pool of kernels/sessions available for each user, you don't have control over the pool only over specific kernel you currently ...
13
votes
2answers
3k views

How to train a convolutional neural net on images?

The functions Predict[] and Classify[] both have the option Method -> "NeuralNetwork", ...
132
votes
9answers
11k views

General strategies to write big code in Mathematica?

I think after six months of exposure to Mathematica and the Wolfram Language I am fairly OK with writing short codes and snippets. However, what are some general strategies to use in order to write ...
70
votes
6answers
4k views

Q&A Mathematica v.11 Neural Networks: A comprehensive look at Layers, Net Functions, and pioneering into this [[experimental]] code

Motivation As Mathematica v.11 was released earlier this month with a host of new [[experimental]] functions and a limited number of examples on curated data that ...
6
votes
1answer
444 views

Begin[“`Private`”] vs Module

So, if you have a package formatted like so: ...
35
votes
2answers
1k views

General techniques for creating complex animations

I love good animations of abstract concepts, and when I try to create them myself, I prefer doing so in code to make sure they are exact (and because some things are just way too fiddly to do by hand)....
2
votes
0answers
190 views

Any Colocalization measuring methods or WL functions?

[Cross-posted on the Wolfram Community.] Is anyone aware of any Wofram image-processing tutorial or documentation/example that specifically address: 1) Intensity Correlation Coefficient-Based: (e.g. ...
7
votes
0answers
94 views

More documentation on stylesheets?

I am finding the "help" for manipulating stylesheets in Mathematica is limited. I have a found a number of helpful tips in the documentation center and StackExchange, including help with ...
37
votes
2answers
3k views

What are some common issues with fitting functions to data?

Mathematica has numerous functions designed to, or capable of, fitting known functions, and finding unknown functions to match data sets. What are some common issues that come with finding those fits?
93
votes
4answers
8k views

Functions with Options

Suppose you want to create a function which has optional arguments. Maeder's book Programming in Mathematica covers the topic extensively up to version 3, but some things have changed/evolved since ...
3
votes
1answer
84 views

Questions about InlineCell vs InlineFormula vs DisplayFormula cells

I'm having trouble with typesetting, and can't get these questions straight in my head. What is the difference between "InlineCell" and ...
18
votes
4answers
466 views

Internal DynamicModule steals scope of external DynamicModule

I have two dynamic objects, one nested in the other. Both have their own functions defined, as follows. I have simplified them to the point where they don't make much sense, but can still illustrate ...
17
votes
1answer
620 views

How to handle package dependencies?

When an application written in C++ depends on some libraries, the libraries are usually shipped together with the application. Two applications that depend on the same library will not share the same ...
13
votes
1answer
279 views

Working with DynamicModule: SetDelayed + OwnValues

Shortly, definitions in form of e.g. x:= RandomReal[] have to be avoided inside DynamicModule[{x}, ...]. Why?, this ...
6
votes
1answer
98 views

How to work with BoxOptions (ButtonBoxOptions, PanelBoxOptions, etc.)

The main question is in the title. Here are subtopics I'd like to focus on: Is there a tutorial related to them anywhere in documentation? How can I check what are current values of e.g. ...