Software engineering isn't just programming done by more people over a longer period of time. In this section you will see several examples of small programming projects and one example of software engineering. Some of the techniques that work for small programming projects aren't adequate for large projects. Some of the techniques necessary for large projects are too awkward for small projects. I'm sure you wouldn't try to plant a 40 acre farm with just a shovel, nor would you be foolish enough to try to use a tractor to plow a 5 x 10 foot backyard garden.
Most people intuitively know when an area of land is too big to shovel or too small to plow.
Unfortunately many people lack that same intuition when it comes to software development. They have one method, and they use it regardless of the size of the project. Using software engineering techniques on a small program leads to just as much trouble as using simple programming techniques on a large project does. You will save yourself a lot of grief if you can recognize when to shovel and when to plow. You are about to see several little software tools that are examples of programming.