Solving a mathematics problem is a combination of two activities:

Thinking about the logical structures that comprise the backbone a question, and what steps will needed to answer the question posed

Executing your plan through methods and techniques derived by both yourself and other individuals

To get better at solving mathematics questions in general requires an improvement of both of these factors. More time should be spent on the former, however, as it is infinitely harder to improve than the latter. As you move to more advanced material, less emphasis will be placed on being able to do mechanical tasks such as multiplication and subtraction, and more on your ability to tackle novel and complex reasoning.

To get to the original question posed - I think every young mathematician should know a little bit about coding. It is helpful for refining problem solving skills and improving abstract thinking; coding is essentially maths in writing; to write code is essentially to do Step 1 and leaving the computer to do Step 2. Through other techniques separate from problem solving, it can be really useful for speeding up Step 2, through modelling and writing maths online.

You will find specific resources on various platforms and languages on my topics page (going live soon!), but not to fear if you haven't learned (or don't want to learn) any code at this point. It is something that is easy to pick up at any stage, and will comes quite naturally to most mathematicians.

**Plain Coding**

Coding is constructing a procedure (and sub-procedures known as functions) from a list commands in order to solve a problem. This normally involves an input given by the coder, and an output generated by the computer.

These commands can be anything from printing something on the screen, adding two numbers, or storing information in the computer. The way that you access these is by learning and writing with a coding language (I would recommend learning Python).

Coding happens on platforms, both on the web and applications. You can download applications from the web, or just stay online with coding notebooks such as __https://jupyter.org/__ . Here, you can write code and get an output to see if you have been successful in your attempts to solve a problem.

I will provide more detail later - keep an eye out for the Topics section!

**Accessory skills**

Even if you don't code regularly, don't know how to code or don't WANT to know how to code, you may enjoy and make good use of the following resources

__Typing Maths __

Ever wanted your maths work to look as neat as an online worksheet? Try learning a few command words through a language called LaTeX. On coding or note-taking platforms such as Notion, you can easily write up formulas. without taking out a paper and pen.

Here is an intro video to get you started : __https://www.youtube.com/watch?v=qjLqM1YYNN4__

__Graphing Calculators __

I have never been able to draw nice circles and lines - due to the innovation of modern graphing software, I rarely have to!

Have a play with *Geogebra*, or *Desmos. *These can be amazing tools to allow you to engage with a wide variety of mathematics questions, especially at A-level.