How do theoretical physicists do their calculations? I am doing a PhD in experimental particle physics. In this field, at least in my experience, almost the 100 % of the job is done using some software, for example Root and Python, because of the numerical nature of the calculations.
On the other hand, each time I had to do some theoretical developments I ended up working in a mixture of hand work (as in primary school but harder) and some tedious calculations with the help of wxMaxima. When I tried to switch 100 % to wxMaxima (as if it were Python for numerical analysis) I found that it was not possible, some (yet simple but tedious) calculations I still had to proceed by hand to get human-readable and useful results.
So this makes me wonder how do theoretical physicists deal with this? How are calculations done? By hand in a paper? With CAS software? Which software? A mixture of different ways as I did? In your minds?
 A: Depends on what you are doing. The nature of work in theoretical physics is as varied as the theoretical physicist. Most likely, the work takes on different forms.
For the most simple calculations, good old pen(cil) and paper is still the best thing. I keep a little note book beside me where I can calculate something quickly if I need to.
For more complicated calculations, the use of analytic software (such as Maple or Mathematica) is essential. I use Maple. The reason is that such large calculation can easily cause you to make copy errors (forgetting a factor of 2 or something) when you do it on paper. That can waste a lot of time when you need to find such errors and redo the calculations. If you use the analytic software in a disciplined way, you can avoid such copy errors. Keep in mind that the results that the analytic software produces can be pages of messy expressions. Such software is not good at doing simplifications of expressions. However, it does provide some tools that you can use to try and simplify the expressions. Over the years, I have develop a skill at simplifying such expressions using these tools, but it is something of an art that takes time to learn.
For numerical simulations/calculations one can use software that is better geared for such calculations. There are many options. I use octave, which is open source. Julia is a more powerful version suitable for parallel computing.
Then last and not least, when I need to do a derivation instead of a calculation, I often do it directly in Latex. Analytic software is not always suitable for such derivations. Since I would then have to do it on paper anyway and because I often want to write it up in some document that I may submit for publication, I just do the derivations directly in Latex, which I can compile and keep as notes. The benefit is that I can include as many steps in the derivation as I like and then just comment out some of them when I compile the document.
Hope it give you a glimpse of the way theoretical physicists do their work. Sorry if this is a somewhat subjective view of it.
