One of the most important concepts in computer science is how to define new commands, how
to add your own words to a computer language. Most computer languages have only about one
hundred words or commands. The art and magic is in defining your own new words out of these
building blocks. We do this all the time in sports. For example, in basketball, you start
by learning how to dribble, how to do a lay-up, how to rebound. Once you've learned these
really basic moves, you learn new moves and put together these building blocks, like a
pick and roll or give and go. You can then go from there to do more complex plays. Once
you learn that play and give it a name, everybody on the team knows how to do it. Similarly
once you've taught a computer how to do an action once using these sequences of commands,
you can make up your own name for that action so it's easy to repeat it later. When you
define your own command and give it a name, that's called a function. Now we're going
to use functions to help the bee. In this example, our function is called get 2 nectar,
this green block right here. We know what get 2 nectar does by looking at this grey
box which is the function definition. If we look inside there, the get 2 nectar is going
to get nectar and then get nectar again. Always look at what's inside the grey box so that
you know what these green function blocks can do.