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.