These place little restriction on how others can use your source code and re-share your software. They also generally have a high level of license compatibility, meaning you can legally combine multiple pieces of software and distribute them together.
These require that anyone who releases a modified open source program must also release the source code for that program. This type of license generally allows users to change and re-share your creation as long as they also include their source code for others, too.