So, if we were to use the following expression on opacity:
value + 5
The opacity is still modifiable, because the expression is getting the current value of the parameter as is, and then adding 5 to it. value always leaves your parameter modifiable, but with the ability to combine different calculations with it.
For example, using our simple Opacity scenario, try adding the following expression:

This will result in opacity gradually increasing the opacity over time. But unlike before, you'll notice that we can now modify the value of Opacity. Why is that?
The term value is the current parameter value, as is. This we can change as we please. To this, we add the time.
If we only used the term time, opacity would increase by 1 for every 1 second that passes in the composition, and we would not be able to change the value
So, for an example, let say we wanted to create a name banner that we can move around as we please, but still had movement of its own generated with expressions.. value would allow this flexibility.
Remember my awesome train drawing?
value, when used with an array will have multiple values. To work with these values, we need to specify what value we want. The way we do this is with the [0], [1], etc. Don't forget that it is ZERO that is the first number, not one. So what we would call the first value would be:
value[0]
Second value would be:
value[1]
And so forth.
So, considering the following example, try to predict what would happen.

t is an increasing value equal to time multiplied by 50.
x is still modifiable, with value[0], but it is increasing because we are adding t and makes the solid move from left to right across the screen.
y is still locked in at 200.
Notice the semicolons. If you aren't sure when to add a semicolon, add a semicolon. It's just a Javascript thing, and you'll never do any harm in adding a semicolon at the end of a line.
How would we get this to stop at a value? That gets into checking our values with an if/else statement which we will do next time.
Also, some suggested reading:
Dan Ebbert's explanation of Array math
I could spend hours coming up with an explanation of array math and not do as good a job as Mr. Ebberts. You'll notice some new things like position[0] which I haven't described. I wanted to start with value first, as it is more universal and requires fewer terms for you to remember. In short, value[0] on position is exactly the same as postion[0]. We'll get to that next time.