There are many roads to open source: Some get involved when they’re learning to code, others when they first spot a bug in an oft-used piece of software. However you get started, the minute you give feedback or make a pull request, you’ve become part of a larger community. There are long term consequences, too: Once you get involved, you’ll never stop learning. Contributing to open source enriches your life and others’ lives all around the world. Looking back at my involvement in the TYPO3 community over the past 15 years, I can point to a wealth of knowledge I gained and gave back by participating in the community. Open source has been essential to my (and b13’s) professional development.
b13’s TYPO3 Core Insights
At b13, we’re investing in TYPO3 core development. Here’s where you can see what we’ve been up to recently.
Learn by reading: dig into the source code
With proprietary software, you go in blind and have to trust the vendor. Open source, by definition, works the opposite way. Developers can inspect the source code of open-source software to learn best practices, find bugs, fix bugs, improve code legibility or performance, or fix security issues. Once a piece of software becomes open source, people around the world can learn from it and benefit right away.
It was more than 15 years ago when I first peeked into the source code of some open-source software. Looking back now, this was THE game changer in my life as a developer. Before then, I’d read countless books on proprietary software and how it worked (this was before eBooks were a thing). Open-source code offered the same benefits—and actual working source code to boot. I was able to learn from others’ know-how for free!
Learn by participating: sharing open-source software is simple
The use of open-source software has risen exponentially over the past 20 years, and part of the reason is speed. Back in the early 2000s, when the founder of TYPO3 Kasper Skårhøj first made TYPO3 open source, he shared the software via email (Git version control wouldn’t be available until 2005).
Nowadays, you can share software within a matter of minutes by uploading a new piece of code to a public repository on GitHub. Popular licenses like GPL2 or MIT allow other users to download, share, improve, and distribute modifications to the open-source code. Then contributors give back by creating a “pull request”—a mechanism that allows you to make “suggested changes” to a given piece of code. Once the pull request is approved, it gets incorporated into the open-source codebase, and suddenly your code has multiple authors and editors!
Learning by doing is one of the best ways to get into open source. One of our company’s key values is that “we never stop learning.” This is because we had the open-source spirit since long before b13 existed. We can run a successful business off of free software, by building on top of open source and giving our customers specific value for their specific needs.
The risks of forgoing open source
Some companies or developers might worry about the “free” part of open source. They think releasing their code into the wild might hurt their ability to make money. Thinking about the sustainability of open source, some common questions come up:
- What does a business model based on open source look like?
- If it’s free, how will you earn money?
- How can you make long term plans and be sure that people will want to continue using your software?
While all these questions are valid, they can be asked of proprietary software, too. And if you look at open-source software from a user’s or customer’s perspective, there are obvious benefits:
- You’re not locked into a vendor: you can always choose a different company or product and find engineers to migrate pre-existing code.
- There are no licensing costs: with Free Open Source Software (there is a subtle difference) you don’t have to worry about incurring more expenses.
- Pay vendors you trust: You might want to pay for open source or extra services, but can wait until you know the product is stable and secure.
I’ve seen companies selling proprietary software go bankrupt, leaving their clients worried about what will happen to their data and content—not to mention their own organization’s future. Open source is more reliable. When developers decide to stop maintaining a piece of open-source software, they carefully consider how it might affect current users. Also, because it’s open source, other motivated developers could take over the code base and create a derivative product—all while retaining the same initial license and benefiting other users of the software, too.
Recently, for example, François Zaninotto, the developer of the popular PHP library Faker, decided to step away from it. Faker had been downloaded 121M times, but Zaninotto’s professional roles had evolved, and it didn’t make sense for him to continue running it. Soon after his announcement, however, the developers of PHP framework Laravel announced they’d take over maintenance of the software — a win for its many users!
How to start giving back to open source
Since we’ve gotten so much from the open-source community, it’s only natural for us to give back, which is why we contribute to the TYPO3 core and share our experience through blog posts. Helping others use sustainable, open-source products is in b13’s DNA. We update documentation, create patches that improve software, and share our learnings with the broader community.
Since our company is deeply involved in PHP, TYPO3, and content management itself, sharing our code and expertise is only one of the ways we participate in open source. We also use a lot of open-source products developed by others. Our automation tooling for servers, for example, is based on free ansible roles by Jeff Geerling. Without him, we’d have a lot more dev work on our hands.
People who use open-source software don’t always know how to give back, especially if they’re in non-technical roles. Here are a few suggestions:
- Sponsoring improvements to code: Our clients love TYPO3 and the things we built for them with it, but pain points inevitably come up. After workshops and meetings with editors, some companies sponsor the changes they’d like to see implemented. That way, when we improve TYPO3, it helps them as well!
- One-off Feature Request Services: If you need a quick change or a bug fixed, we can find the right person for the job.
- Training and events: We love doing training and speaking at events promoting open-source software. These are the best ways to show others how easy it is to contribute.
Useful TYPO3 Extensions, from b13 to You!
Sharing our expertise. Here are some TYPO3 extensions we have developed that help us deliver value in client projects.
Maintaining TYPO3 for more than a decade, I’ve learned that there’s so much more to it than just reading and writing code—you gain organizational, technical writing and teaching skills, a deep understanding of high-quality software, and a lifelong community of friends and colleagues who’ll be there for you in the good times and the bad.
Most of my expertise stems from open-source software and the community members who’ve contributed and provided guidance to me over the past fifteen years. Open source is a life changer, on both personal and professional levels. We wouldn't be running b13 without it.
How we contribute to TYPO3 Core
Working on open source software is much more fun when you’re not alone. But not everyone has time to dedicate to fixing bugs and polishing. We’re employing a TYPO3 developer to fix bugs and unresolved issues over the next six months. Find out how you can contribute, too!