Every line of open-source code your startup uses - and every line you publish - travels with a license attached. GitHub's Choose a License project lays out the three licenses that dominate startup code, and their differences are not stylistic. They decide what users of your code must do, whether they get patent protection, and whether your own product can stay closed.
MIT: permission with a notice
The MIT License is the shortest and most permissive of the three. Choose a License lists its grants as commercial use, distribution, modification and private use. Its one condition is attribution: the license requires "the above copyright notice and this permission notice" to be included in all copies or substantial portions of the software. The only limitations are liability and warranty - the authors promise nothing and answer for nothing. In practice, MIT code can be folded into a proprietary product and sold, as long as both notices stay attached. What it does not contain is explicit patent language: nothing grants patent rights, and nothing withholds them.
Apache 2.0: the same ideas, plus patents
Apache License 2.0 grants the same four uses and adds a fifth: patent use. Contributors explicitly license any patents covering their contributions, which shields users from patent claims by the very people who wrote the code. The price is two conditions instead of one - keep the license and copyright notice, and state the changes you made - and one more limitation: trademark use. The license does not hand you the project's name or logo. Projects that care about patent peace tend to publish under Apache 2.0 for exactly that reason.
GPL v3: freedom that is contagious
The GNU General Public License v3 grants commercial use, distribution, modification, patent use and private use. Its conditions change the economics of anything built on it: convey GPL code - the license defines conveying as propagation that lets other parties make or receive copies - and you must disclose the source, keep the notices, state your changes, and license the whole work under the same terms. That last condition, "same license," is copyleft, designed so derivatives stay open. GPLv3 is equally explicit about network use: "mere interaction with a user through a computer network, with no transfer of a copy, is not conveying." So users interacting with GPL software running on your servers does not by itself trigger source disclosure - but shipping a GPL library inside a product you distribute does, and combining GPL code with your own in software you convey raises derivative-work questions that are fact-specific. The AGPL is the license variant that adds a network-interaction condition for exactly that scenario. On GPLv3's text, then: conveying GPL code to users brings copyleft obligations, while users merely reaching GPL software over a network does not - and a close call deserves counsel, not a blog post.
What this means for you
Three working rules follow. First, inventory your dependencies and their licenses before a funding round or acquisition forces the question - MIT and Apache dependencies are almost always fine, GPL in a distributed product is a board-level conversation. Second, when you publish code yourself, pick deliberately: MIT for adoption, Apache 2.0 when patents matter, GPL when you want derivatives to stay open. Third, keep the notices - dropping attribution is the most common, and most avoidable, license violation a startup commits.