paint-brush
Build on Top: Using Open Source Platforms to Increase Productivityby@scottdclary
993 reads
993 reads

Build on Top: Using Open Source Platforms to Increase Productivity

by Scott D. ClaryOctober 3rd, 2022
Read on Terminal Reader
Read this story w/o Javascript
tldt arrow

Too Long; Didn't Read

Open source is a way for developers to create and share software so that anyone can use, study, change, and improve it. The advantages of open source are numerous. Developers can save time and effort because they don't have to start from scratch. They can also be confident that their work will be compatible with other open-source projects. Ian Tien, CEO of MatterMost, explains how to find a market for your software and how to get paid features to professionals and executives to benefit from the paid features.

Companies Mentioned

Mention Thumbnail
Mention Thumbnail
featured image - Build on Top: Using Open Source Platforms to Increase Productivity
Scott D. Clary HackerNoon profile picture

If you think about the science fiction utopias of old, one thing was usually present: a widespread sharing of technology and ideas. Open source is the modern-day realization of that utopian dream. It's a way for developers to create and share software so that anyone can use, study, change, and improve it.

The advantages of open source are numerous. Developers can save time and effort because they don't have to start from scratch. They can also be confident that their work will be compatible with other open-source projects. 

And, perhaps most importantly, they can trust that the platform will be well-maintained and supported by a community of developers.

When I recently sat down with with Ian Tien to discuss his route from making HTML5 online video games to becoming a VC-backed CEO, I didn't think I was going to come out with a full-length explainer of the benefits of open source platforms. 

But that is kind of the point, isn't it? 

Ian was generous with his time and knowledge, happy to share anything that would drive the conversation forward, encouraging more people to follow his path down the open source path.

From SpinPunch to MatterMost

Like any good story, Ian’s CEO journey started with an inciting incident. While developing online games for a company called SpinPunch, an early messaging service suddenly put all of their communication data behind a paywall. 

What spun out of that would eventually become MatterMost, an open-source alternative to SaaS platforms like Slack and Notion. 

His decision to make it open was influenced by a friend who explained the choice simply:

“If you open source it and it is popular, you can always close it without giving away that much. But if you open source it and no one cares, you should just stop working on it - go do something else.”

Ian believes now that by making the platform available for developers all over the world to work on, you can save productivity and avoid those wasted hours of “1000 companies rebuilding the same thing.

But he wasn’t going to stop with high-concept advice like that. Just like his company - he’s an open book.

How to Find a Market Fit

It’s great to think of things as a utopia but in today’s world, these projects still have to include a capitalist slant. There has to be a way to make money, and for that, you need customers and a market. 

“Follow the emotion,” says Ian, who explains that the best way to know what people will pay for is by seeing what they react to emotionally. 

What is so important for them to fix that they will spend money to do it?

Anybody Could Just Copy it, Right?

I’ll admit it. Before this conversation with Ian, I had the same thought that so many other people do when considering open-source software. Couldn’t someone just take all of your work, and copy it?

While the answer is yes, technically, he offered some pretty compelling evidence to suggest that even though someone could doesn’t mean they actually would.

The team at MatterMost uses the acronym TACTICAL to explain.

Test Infrastructure

A good open source project will have a comprehensive test infrastructure in place that can be used to verify the correctness of changes and additions. This includes unit tests, integration tests, end-to-end tests, and more. A well-tested project is less likely to break when someone makes a change.

Since this testing work isn’t open source - much of it is done with actual human testing so it can’t be - you can “fork” the project, but you would need to rebuild that entire infrastructure from scratch. 

Alignment

One of the biggest things that Ian explained was “don’t try to monetize developers” because it will “militarize every developer against you.” 

What he means by this is don’t make the paid part of the service the things that developers need; instead, offer them the free stuff so that you can benefit from their creativity while offering the paid features to IT professionals and executives. 

As Ian puts it, developers “don’t like building the compliance features” meaning they won’t try to steal the whole platform. 

Core Committers

This is a key part of not only keeping your project safe but making sure that you have the best people working on it. Bring in the community members that are most dedicated and allow them to work directly for the company, instead of just building additional capabilities on the outside. 

Bring your potential competitors inside your tent, and they will never become your enemy.

Threat Intelligence

Security is a huge part of any open source project, and Ian is so obviously committed to this side of the business that he brought it up several times in our conversation. In this context, he explained how it can be used as a way to keep any potential competitors at bay. 

If a report is submitted that points out a security flaw, the company will fix it, and let their customers know it is fixed, but not release the details of the patch for 30 days. If someone “forked” the platform, not only would they not have access to that fix immediately but they wouldn’t have even received the report in the first place. 

Innovation

If a platform continues to innovate and you try to copy the entire system, you won’t be able to keep up (I could barely keep up with Ian in a one-on-one talk, what chance do you have of matching his entire team!)

Compatibility

Once again mentioning security, Ian mentions how if you took one build of the software and tried to copy it, any future patches won’t work properly. You would have to be doing most of the work yourself to integrate the fix, making the whole project untenable. 

Architecture

If you build it correctly in the first place, there will be little reason to recreate it anyway. The whole point is that you can change an open source project, meaning you can leverage all the work that has been done and make it specific to your needs without rebuilding the whole thing.

Licensing

The last thing, and perhaps the one that makes the most sense to the average investor, is that while the code is open source, the trademark is not. So if you were trying to take it all and build a new brand it would be just that - a new brand. 

You wouldn’t be benefiting from the work that MatterMost (or whatever other company you were taking from) has already done to build trust in the community. 

Taking Open Source SaaS to Market

So while the philosophical debate over open and closed source software may be interesting, the more pressing question for many of you will be how you take an open source project and turn it into a valuable company. 

“It’s really about building something that people want.”

Sounds simple, doesn’t it? Despite that, so many startups seem to forget the product development loop that is necessary - a loop that includes direct communication and feedback.

  • Talk to customers: What do you think of this? What features would it need? Would you pay for it?
  • Build product: Here is something that fixes your problem. 
  • Exercise: Keep your business healthy, lean, and growing with constant evaluation. 

This isn’t a one-time list of steps. You need to loop it over and over and over throughout the entire life cycle of a company. It’s never enough to know what a customer wants today; you need to know what they want tomorrow, six months from now, and three years down the line. 

Retaining Great Talent Without Investment

One of the most interesting parts of the conversation with Ian revolved around some of the strategies he has employed in hiring and retaining the best talent available, even without the benefit of huge capital investment. 

Open source projects help in this way, though it isn’t with direct compensation. 

“The people that are money motivated - go work in hedge funds,” he said, laughing off the idea as if it is something that he easily could have done if he wanted to. 

Instead, he focuses on three things when he’s trying to attract talent that belongs in the open source world.

  • Impact: “If you do it right, it never has to be written again.” The idea is that if you want to make a mark in software history, this is how you’re going to do it - not counting the Netflix options in your portfolio.
  • Growth: “Half our managers are promoted from within.” Enabling your employees to grow and develop within your company is integral to retention in any industry, and perhaps even more so in tech. No one wants to sit still, even if they are being compensated well.
  • Connection: “The ability to walk off a plane in 20 different cities around the world and have people greet you at the airport.” Working with people all over the globe, no matter what culture, background, or location, is a key part of hiring for an open-source project. That is kind of the whole point - everyone can be a part of it.

But while these three things are the attributes to look for, it may be hard to foster that kind of talent pool without a little bit of work. 

Building the Community

There is a skill shortage in so many different developer fields, so building an engaged, excited community is key to any sort of company growth. These are the people you will be drawing from for your next position, whether it is through a referral or, in the case of open source, the delivery of a ticket. 

Ian suggests that at least in this field, it comes down to three key principles.

  • Clarity: You have to be crystal clear with which projects are available, and which will be accepted. 
  • Speed: Focus on the people who can deliver something quickly, that they had a passion to create. Instead of someone who works half-heartedly on it for weeks or months. 
  • Safety: The last thing a developer wants is to have a pull request rejected, despite correctly following the instructions. You must create a space where developers know that their time isn’t being wasted.

If something is rejected, Ian explains that is “our failure, not the contributor’s.” That is the crux of the whole thing - take the responsibility of providing clear, efficient, processes that will give your developers a sense of security about the project they choose to work on.

Wrap-Up

There is so much more to learn from someone like Ian, especially given how willing he is to share his knowledge. 

“Success for me is living up to all the gifts that I’ve been given.”

He knows he had some advantages over others, and he wants to make sure he doesn’t squander those. 

So beyond the open source discussion that we’ve distilled above, he also gave his thoughts on the remote work revolution, software security and how it could be improved, and some of the overlooked benefits of bringing in VC money early.

If you want to check out the whole interview, head over to the Success Story youtube page, where we have hundreds of podcasts with some of the brightest minds in business today. 

We’ll be back with another one next week!

Also published here