Tag Archives: funding

The Impact of Funding for Sustainable Open Source Projects

Messy pile of different types of paper currencies from around the world

I recently blogged about the challenges of sustaining open source projects and communities over the long-term and what companies can do to help. Much of the critical infrastructure that we all rely on is made up of open source projects that lack the resources to be properly maintained over the long term. One way to address this issue is by providing funding for maintainers and projects, but that’s not always as easy as it sounds. Money can introduce new challenges for projects as they figure out how to distribute those funds and decide who does or doesn’t get funding. The groups providing the funding also need to be able to measure and communicate the impact so that they can continue to justify providing funding in the future. 

At the recent Open Source Summit in Denver, Georg Link, Andrew Nesbitt, Alyssa Wright, and I discussed some of these challenges around funding. Here’s the video from our panel discussion.

For the past 18 months or so, I’ve been consulting with the Sovereign Tech Agency a few times a year as one of their external experts to provide input into selecting projects to receive funding, which has led me to better understand some of these challenges. I’ve been working on measuring the impact of funding with Paul Sharratt from the Sovereign Tech Agency / Fund along with Cailean Osborn and Mirko Boehm from the Linux Foundation who have been working with the Next Generation Internet (NGI) initiative at the European Commission (EC). We wrote a paper on this topic, which eventually led us to start the CHAOSS Funding Impact Measurement WG. Anyone interested in measuring the impact of open source project funding is welcome to join our working group meetings, so I hope to see you there!

Additional Resources:

Photo by Jason Leung on Unsplash

UN Open Source Week Part 2: Digital Sovereignty and Resilience

Row of flags in front of the United Nations Headquarters in New York on a sunny day with green bushes in the foreground and skyscrapers in the background

This is the second, and final, blog post about United Nations Open Source Week, so if you didn’t read part 1, United Nations: OSPOs for Good Day, you might consider pausing and reading that post first, since it provides more context about the event and why the UN cares so much about open source software.

As part of the week’s activities, there were several side events on Friday, and I spent the day in the Digital Sovereignty and Resilience side event. This blog post has a short summary of the presentation, panels, and discussions, so these don’t necessarily represent my views and might contain factual errors. Speaker names and abstracts for each session can be found on the United Nations Open Source Week website on the side events tab.

The Digital Sovereignty and Resilience side event started by looking at ideas for building a sovereign digital workspace with short presentations about various open source workspace solutions. The French Interministerial Digital Directorate (DINUM) talked about how they have collected a set of tools (Le Suite) for their use and are also collaborating with Germany’s Zendis. There were also short presentations about specific projects that can make up a workspace solution: Matrix, Grist, and IREX (Institut du Retour d’EXperience). But it’s more than a set of tools, we need a better vision for how to build an open source digital workspace and integrate it across governments. It’s not about one tool to beat the others, but about working with companies and contributing within open source communities to help make sure that we have integrated solutions. This requires funding, especially when companies are involved. The UN is trying to coordinate across technologies to integrate solutions and improve collaboration, and they are also looking at potentially hosting some open source solutions – starting within the UN, but this is early days for this work, and we would need to expand it beyond internally within the UN to across countries. 

The next session was all about securing the supply chain through global collaboration, which is something we talk about all of the time within OSPOs and in the corporate world, but in light of the CRA, this is increasingly important for all of us. We need more collaboration across governments and other stakeholders (e.g., companies, organizations) to make sure that we can all work together to understand and improve the security of our open source software, and this is something that the UN might be able to help facilitate. We collaborate now, but it’s pretty ad hoc, and we need better public / private relationships / partnerships. We need more funding to be able to sustain these efforts beyond what groups like Alpha Omega and STF / STA are already funding for security initiatives to improve open source security. 

The folks from the Sovereign Tech Agency led a session called, Invisible Work, Critical Code – The Role of Maintainers in Open Source Digital Infrastructure where they talked about how open source is like a sewer, critical infrastructure that needs to be built and maintained over time. In the case of something like public water systems, railways, libraries, schools, and roads, these are usually maintained by governments paid for by our taxes. Digital infrastructure is fragile (obligatory XKCD), despite being the foundation of the digital economy, and governments should also be investing in critical and essential open source digital infrastructure in support of them as public goods. This was followed by a panel, which talked about how maintaining projects go way beyond just code and include things like conflict resolution, mentorship, communication, building community, and other invisible labor. Being inclusive of people with different needs helps level the power imbalances that we so often see in open source and in software in general. Being welcoming for the most vulnerable people creates spaces where people want to contribute and participate. Software is too important to be left to just developers. 

The final session in this Friday side event is Fostering Resiliency in the Digital Public Infrastructure (DPI). DPI is like a public library and needs to be resilient enough to endure over time and across administrations and economic conditions. We need to think about how we can ensure that the 100,000 components embedded in our software are safe and secure when many of these components aren’t actively maintained. This impacts us on a societal scale because these components are all part of our DPI. People need to be able to depend on DPI based on their use case to avoid societal harm. DPI and open source together allow us to recombine and reconfigure to use the software in ways that allow governments to better support their constituencies. Data integrity and trust are important for DPI across the many stakeholders involved in building and maintaining the software. Risk identification, risk understanding, and risk mitigation are steps toward building resilient DPI. Finally, there was an overview of ApeiroRA and the NeoNephos Foundation for next generation cloud infrastructures and services that strengthen digital sovereignty for Europe, but that could also be used by other regions. 

I really enjoyed the time I spent this week! The best part of the week were the conversations, and it was good to get out of my little open source bubble to talk to and better understand people who are working in contexts completely unlike my own. The UN did a great job of bringing people together from industry, government, not for profit organizations, and other groups from around the world with over 40 countries represented, including many from the global south. If we truly want to make open source software better serve the needs of our global communities, we need to collaborate across all of these groups, so a big thank you to the UN for bringing us all together!

Companies Can Mitigate Sustainability Risks

A bunch of people having a great time in a fun picture from CHAOSScon EU

I wrote a blog post earlier this week, Contributor Sustainability Impacts Risk and Adoption of OSS Projects, focused on helping maintainers and open source project leaders understand how companies view risk and how this impacts adoption of their projects. Marko Bevc commented on Bluesky that “there is another side of this coin while companies evaluate the risk (as they should), they should also look into how they are going to support those projects they use (either with contributions or/and other resources – e.g. funding).” This is a really important point, and it’s something that I always bring up when talking to companies about evaluating risk (20 min into this video, for example), so I decided to write a part 2 for the original post, but this time focused on what companies can do to mitigate contributor sustainability risks when adopting open source software.

As part of spending a lot of time over the years thinking about the sustainability of open source projects, I’ve given a bunch of talks (see Additional Resources section below) about how companies can assess the risk and viability of open source projects, but assessing viability is the beginning of the process, not the end. Understanding open source project viability is an ongoing process that needs to be monitored and decisions revisited as projects evolve. As a company, the best way to monitor the ongoing viability of a project is to have your employees contributing and participating within the project. This serves another important purpose beyond just monitoring. By having your employees participating in a project, you can help to continuously improve the viability of that project to increase the chances that it will continue to be viable over the longer-term. 

However, most companies use so many open source projects that you can’t possibly employ contributors to participate in all of them. Generally, I recommend that companies focus their contributions on strategic open source projects that are critical to your ability to deliver customer-facing products or services. For the other projects that you don’t contribute to directly, you might still be able to help them increase their viability in other ways, like through funding, for example. Some companies have funding programs where they fund key dependencies and other projects (e.g., FOSS Funders, Microsoft’s FOSS Fund, Bloomberg’s FOSS Fund). However, it’s also important to think about the impact of providing funding because throwing money at some projects can create friction within the project that can sometimes have a negative impact, while in other projects, funding can make a big difference in increasing viability. We discuss these and other funding issues regularly as part of the CHAOSS Funding Impact Measurement Working Group, and we also maintain a list of resources and research about funding.

To wrap this up, open source sustainability and viability are not something that you can think of as all or nothing. No project is perfect, and each project will have areas within them that are more or less sustainable. Companies can help make projects more sustainable and more viable over time by providing resources, like direct employee contribution and funding for those projects. 

Additional Resources:

Taking Your Idea From Side Project to Startup

I spent last evening and most of the day today at From Side Project to Startup. I had a great time, and I want to start with a huge thank you to Eva, David, the rest of the team at CubeSpace, the volunteers and the sponsors for putting together a great event! Great sessions, cool people, and peanut butter and jelly for my bagel(s).

I also took a bunch of notes during the sessions that I attended. Hopefully some of this will help people who missed the event or those who attended different sessions.

Disclaimer: Please keep in mind that these are my notes from the sessions. I tried to capture as much as I could, but I certainly missed a few things, and there are probably a few mistakes in my notes. These are also in the words of the speakers and participants in the sessions, and I may or may not agree with the advice below.

Basics of starting your Business
Led by Jacqueline Babicky-Peterson: Business Advisor at the PCC SBDC

The PCC SBDC and OTBC are good resources in pdx for startup information.

You have to be ready to adapt your plan and never go on autopilot. Planning is helpful in the process to think longer-term, balance alternatives, prepare finances, and remember why you did this in the first place. Many people go the startup route because they want to do things their own way. It’s also very stressful, since you are managing so many things at once and troubleshooting, but many people who start businesses also like this environment despite the higher stress levels. It helps to look at your personal goals and why you started the business. If you started your business for personal or lifestyle goals, you might want to think of the business as a tool to accomplish those goals.

You need to be careful about requests that are outside of your core business. In some cases, they may make sense, but you need to be careful not to let it spiral out of the scope of what you want to do. Sometimes your whole business can shift in a direction that isn’t what you want to be doing. Feature creep can cause this, too. It happens to all of us.

You can easily form an LLC yourself without any professional help; however, if you need a contract, have intellectual property, want to take investments or hire employees, then you should get help from a lawyer. It also helps to have a CPA organize your books while they are still easy.

The Mistakes we made because we thought we were “different” despite the warnings
with Rabbi David Kominsky, Wm Lehler, and Bart Massey

You will make mistakes because you need to take risks, but you should be making new mistakes, not just repeating all of the mistakes others make.

You need way more money than you think you do. A 6 month runway is not enough no matter how unique and cool you think you are with your startup. Don’t invest too much money on things you may or may not need (CubeSpace & too many phone lines) buying for the long haul rather than what you need right now in a cash flow restricted environment (volume discounts are not always great for startups). Similar issues can also be caused by not having a realistic business plan.

It’s a mistake to think that money will solve your problems. You will tend to use all of the money you have available, and some of the companies with the most money have the most difficulties. They start to spend money on stupid things that they don’t need.

Don’t think that being acquired by a big company will solve your problems. They will crush your soul. Avoid those multi-year golden handcuffs if possible.

Funding requires that you give up some control of your company. If you want control, you need to bootstrap. If you need to grow quickly and get big, then you need to give up control and take funding.

Number one indicator of success for a startup is having multiple people involved in the startup (but don’t hire a relative). Never ever hire someone that you can’t afford to fire (whatever the personal reasons).

If the business plan only works if you don’t pay yourself, then it isn’t a valid business plan. If it only works if you work 80 hour weeks, it also isn’t valid. Realistically, you will probably work 80 hours anyway, but if you plan for 80 hours, you’ll probably realistically need to work 120 hours.

When you hire people, you want to hire them for the things that you don’t like to do. You should focus on the things that you love and what to do.

Overprotecting your IP is another mistake: “I have this really great idea, but I can’t tell you about it.” If someone can steal your idea based on a simple conversation, it isn’t a good idea for a business. Networking and getting feedback are too critical to avoid talking to people about your startup. They can also help you find your competition and make suggestions.

If you don’t think you don’t have competition, you are wrong. Find them and learn as much as you can about them. The competition also may not be obvious. For CubeSpace, the competition was mostly coffee shops more than other co-working spaces. Talk to your competition and make them your friends. There should be enough to go around if it really is a viable business. If you have more work than you can do, throw some of that business to other people and you can develop cooperative niches.

Not networking enough is another mistake. You can call almost anyone in town and convince them to have breakfast or coffee. But you have to be willing to give back later and meet with other people to give them advice.

Biggest mistake is not having tiers of savings. It can drain way more quickly than you expect, especially for freelancers. Don’t overspend early and take on debt (especially credit card debt) for things you don’t really need, which creates even more financial pressure. You are better off avoiding debt and giving away equity for startups.

Investing many months of your life to join a startup with no salary can also be a mistake. Don’t ever do this unless you are willing to kiss the money goodbye if it doesn’t work out. That’s why you start these as a side project and turn them into a startup while you still have other income coming in.

Don’t be desperate. Don’t under price your services to beat the competition – it can bleed you dry, drain your finances, and eventually put you out of business. It is better to walk away from this type of business.

Don’t bid on a contract outside of your core competency. Even if you think it might work and you might be able to pull it off. Ultimately, it won’t be a great fit and will cause lots of stress. It takes too much out of you and you start not feeling great about what you do. It’s also related to desperation.

Look at all of the realistic risks and the unrealistic risks. Get help figuring out what the risks are, and have contingency plans for them.

You are not special and you are not different. This is the anti-gen y mindset.

When you price, don’t price it based on what it costs to produce. Find out what it is worth to them and charge that. 2-3x what it costs to produce it is probably what you should charge. Even in hourly rates, if it takes you an hour to do something that takes others 5 hours, you should charge appropriately. Also look at what competitors charge to get a gauge on the market.

Common thread: talk to people every step of the way, and take people’s advice; however, don’t make drastic changes in directions based on every piece of advice. Hear the advice and make corrections along the way based on the common themes that you hear from multiple people. Sometimes smart people can’t always give you tangible reasons why, but don’t just discount it because they can’t give you specific reasons.

You need to be genuine about who you are and what you do. Don’t try to become something you aren’t just because you think it is what people expect of you or your role (like dating advice). Open yourself up to people you work with and form emotional bonds with the people you work with. Don’t try to isolate yourself from them to maintain authority.

Big mistake: Not putting things in writing. Take notes and send them out in writing. Always have an employment contract even for a couple hours of work and specify who owns what intellectual property. Get signatures on documents to avoid legal troubles.

You have to be willing to do sales and marketing (esp for freelancers). If you aren’t willing to go out and sell your services, then you shouldn’t go into business, or you need to bring in a partner who is willing to do the sales. Don’t be afraid to take advantage of other resources (people and infrastructure).

Don’t forgo the good in pursuit of the perfect. Don’t look for the solution that will do everything, unless you are a software company, don’t write your own software. Find something good enough for your purposes.

You will either have engineers who think that marketing is worthless and / or salespeople who think that engineers are interchangeable. Both marketing and technical skills are important.

Go into business with the right person: someone who will challenge you and knows you well enough to call you on your bullshit. Have a board of advisors that are willing to give you advice. Consult them on a regular schedule and give them a little stock / equity in exchange for their help.

What kind of funding are you eligible for?
with Carolynn Duncan

Start by thinking about what type of business you have. Certain types of businesses fit better with specific types of funding.

  • Microbusiness (start on $10k or less, 1-3 employees, $100k revenue) – bootstrap, self-funded, credit cards.
  • Small business (start on $100k, 1-5 people, $1m revenue) – Savings, government (women, minorities, economic dev), credit cards, bank loans, friends and family.
  • Growth business (start needing $500k-$2m, 5-20 employees, $20m revenue) – Angels.
  • Mega-growth business ($2m-$10m to start, bunch of employees, $100m+ revenue) – VC or Government grants (biotech / research at a lab)

Investors will never tell you no. They just stop taking your calls. Need to read their signs to decide whether they are serious.

Steps to get Angel / VC funding:
Note: expect it to take at least 6 months, and think of it like any sales process; you are selling them a part of your business.

  • Meeting: Get an intro from someone or meet them at pitching events. Your elevator pitch in the first 30 seconds can make or break your chances. 1-2 weeks.
  • Marketing: Business plan, financials, and pitch. 2-4 weeks.
  • Selling: Start discussing concrete stuff like percentage of equity. They will start doing due diligence on you and will ask for a million things as part of the process.
  • Closing: If they say yes, they’ll send you a term sheet, lawyers get involved, and you start negotiating. Until the final deal is signed, it could fall apart anytime up to the very end.

Look at economic development development companies (usually county-based) if you need information about micro-lending opportunities.

When someone says no to you on funding, you should get as many specifics as possible about why they said no. Fix those before you move on to the next source. Don’t burn a bunch of bridges with the same mistakes.

What you need before you start:

  • Elevator pitch
  • Balance sheet for 1 year and 3-5 years
  • Cash flow statements
  • Business plan
  • 10 page pitch presentation.

Start thinking about the due diligence checklist to get an example of what they’re going to want after they decide they are interested (Google Due diligence checklist to get examples).

Whew!

These are only three sessions, and it is quite a bit of information to process. I had a great time and had interesting conversations with fun people.

Feel free to fill in any gaps that I missed in the comments.