
How Do Developers Promote Open Source Projects? - eqcho4
https://arxiv.org/abs/1908.04219
======
byuu
A very useful article, thank you for sharing.

This is definitely a hard problem for solo developers who are like me and have
significant difficulty with social aspects. I've never submitted any of my
projects or writing here, because I have this underlying feeling that I'd be
bothering people. It also doesn't help to be on a site filled daily with
dozens of really incredible projects that feel so much more deserving of
attention. Yet I've often found myself bewildered by concepts such as SEO and
promotion, and I much prefer to spend my time coding. I hate to generalize,
but I can't imagine I'm particularly unique in this regard.

But indeed, it's a serious growth limiter when we are stuck working alone. I
feel like any serious open source project really needs someone on the team who
groks all the social stuff and can get the word out to the right parties who
would be interested. A networking service to connect these two types of people
would truly be invaluable, I feel.

I was also told that technical writing helps a lot, and indeed, despite being
a little guy in a small niche, two of my articles were submitted by others
recently, and seeing such a positive response has been a huge boost to my
self-esteem and confidence. (It did ruin my bounce rate stats though, went
from 44% to 87% in two days :p)

But yeah, I'll agree with the arXiv conclusion that HN is an incredibly
valuable resource for open source developers, with a very friendly community
behind it.

~~~
dlphn___xyz
online forums like HN and reddit aren't useful for meaningful feedback - seek
out local meetups and pitch your idea

~~~
benologist
If you submit your project to HN you will be getting unparalleled feedback
imho. The depth and range of expertise here is incredible - from VC to
legendary developers and CEOs - and a lot of people are comfortable sharing
their feedback. On top of that, there are just experts across all intellectual
fields hanging out here.

But it's technical feedback, it's idea feedback, product feedback, it's not
likely to seed your users or paying customers. And a lot of submissions go
unnoticed.

~~~
rikroots
Submission to HN is not enough in itself. The title and link in any "Show HN"
submission needs to be calibrated to both catch the eyes of the right HN
readers (so they learn - if only fleetingly - that the project exists) and
also intrigue them enough to devote 5-10mins of their time to investigate the
project and offer feedback.

I have not managed to work out (yet) how to craft such a submission for my OS
project. Putting in the time and effort to get to the stage where a submission
does generate interest/responses is the entry price that I need to pay, to
earn those responses.

In the meantime browsing HN has become one of my main pleasures, and an
education on subjects way beyond my comfort zone.

~~~
theturtletalks
Yep, I’m in the same boat. Worked on a project and made a Show HN that linked
to Github that linked to the website and docs. No comments or upvotes so I’m
sure it got lost in the sea of other Show HN posts.

~~~
wolco
Try again, timing can matter a lot. Friday 4pm est vs Monday morning will
change the number of responders and even the responses

~~~
theturtletalks
Thanks man, I’ll give it a shot!

------
moron4hire
I'm a little worried that this only studies channels and not the original
content itself. I've personally used most of these channels and have found a
rather "bucket-of-crabs" sort of reaction, unless I'm very, very careful to
release an absolutely perfect post.

There generally seems to be only a level of tolerance for projects released by
big companies. If you have a FANG coolant behind your name, it doesn't matter
what you're releasing, how long you've been working on it, or even how big
your team actually is, you'll grab a ton of popularity.

But as a solo dev releasing under my own name, the only things I can get
attention for are basically hacks in niche topics. The long-standing, well
designed work I do, that is used in real projects, with tons of documentation
and proven results, at best gets ignored. At worst, I get accused of "re-
inventing the wheel", even for things _I_ invented.

I've never gotten anyone to join me on a project. There are a lot of self-
fulfilling prophecies that "solo-dev work won't be around in a year, so don't
bother even starting". Either I release too early and people don't want to
join because nothing is finished, or I put a ton of effort into documentation
and contribution guidelines and then things just get ignored. Just when is it
a good time to go from code I've written on my own to sharing with others?

It just really makes it seem like FOSS is only for people who have a big,
recognised company backing them. I've even had a project or two copied by
recognized companies, with no larger team than one or two people, and watched
their half-baked early releases quickly eclipse my own efforts just because
they could get people to join the effort and work for free.

~~~
bai0
This mirrors my experience 100%. I'd like to say that you are not alone
but...well...

We are all alone together.

~~~
bai0
Just checked your profile, didn't realize you were the author of PrimroseVR.
Now I feel even more alone-together with you, I'm the sole developer for
JanusWeb and my experience completely matches what you describe.

Pretty depressing how open source projects by individuals can at best hope to
"inspire" devs at FAANG companies to just do the same thing and then use their
company's immense resources and developer relation teams to promote their
project over the ones that existed before them. I wonder how many talented
devs have had this happen to them only to give up and stop trying.

~~~
moron4hire
LOL, thanks. I tend to think the only reason Primrose had any attention was
because it was the only complete framework for WebVR in the browser at the
time. I remember using JanusVR in 2014 at a VR meetup on someone's DK2 and
really liking it. But all I had at home was a smartphone in a cardboard box
that I had hacked together myself shortly after seeing the Google Cardboard
announcement. I only got a DK2 after Tojiro started releasing his WebVR builds
of Chromium, then got lucky that my design was similar enough to his early
WebVR API design that the port only took a day.

Primrose existed for a year before A-Frame came out. And overnight, I somehow
became the copycat. In the second year, I even saw claims I was copying
ReactVR.

Incidentally, way early on, I had been planning to extend Primrose to run in
JanusVR. But after the third year, I just couldn't get past the burnout and
was getting professional dev work only for Unity. So here I am now, I'm the
head of VR at a foreign language instruction company, where I'm working
exclusively in Unity. I have a new framework I call Juniper, but I haven't
really told anyone about it because I just don't care anymore. It's good
enough that it's just for me. It's open on Github, and if someone stumbles on
it, that's ok, but otherwise I'd rather focus on working for money than
working for criticism on HN.

~~~
bai0
Yup, very similar story here. I'd been working on a WebGL engine called
Elation Engine since 2011, and when VR hit the scene, I quickly added support
for barrel shader and WebSocket tracking, then when WebVR was a thing added
support for that as well. Those times were exciting, it felt like indies and
hackers were driving the technology, and the possibilities were endless.

I joined Janus in 2016, after Facebook bought my previous employer and fired
my team. I'd added support for loading Janus worlds within my engine, which
opened it up to normal web browsers, and the team at Janus was excited for the
possibilities. It was a great story of how I was able to turn an open source
project into a paying job, and people were EXCITED about what we were
building! We had investors and users, everything was great!

Fast forward to today. The team is broken and burnt out. Many left when we
couldn't secure another round of funding and the paychecks dried up. The code
is in a poor state because we kept chasing what platform gatekeepers and
potential investors told us THEY wanted to see. The founder and myself both
had kids within a month of each other and can no longer work like we used to.
One guy's wife left him because he was spending so much time travelling and
promoting the project. We have less users than ever, despite our tech being
years ahead of what people think is possible. We still pretend like we're a
normal healthy happy company, because we still believe in the idea and
nobody's going to invest in a company of depressed burnt out people. But now
even that fantasy is unsustainable, it's probably time to just give up and get
a regular old job.

Of course success was never guaranteed, but what we didn't expect was how we'd
just end up shunned and ignored. When A-Frame first launched, they listed
Janus as an inspiration, but once they reached some level of success and saw
us as competitors, they wrote us out of that history book - literally just
removed us from the list of inspirations, but kept other projects like SceneVR
(whose author also credits Janus as his inspiration). We've got literally
thousands of interconnected worlds people have built which nobody visits or
links to, but if someone makes a similar world with A-Frame or Babylon, we're
sure to hear all about how great and new and innovative it is.

Modern open source is not the same scene it used to be. I don't know what's
next. It's pretty depressing.

~~~
moron4hire
I just don't talk about my stuff online that much anymore. I'm still excited
by VR, probably more so now than ever now that I have a great job where people
really appreciate me. I can do so much better work now. I can actually look at
my GitHub commit records and see the timeline.

I try (and often fail) to remember the 90/9/1 rule of online communities. 90%
of people are only lurkers. The next 90% (9% of total) of people only comment.
It's only 1% of people that create things. It's why I have retreated from
taking about my projects online. Literally 99% of the people looking at your
project have no idea what it's like to build something.

Stay in touch. You can find my contact info on my website. I might need help
in the future.

------
adieu
There are many open source projects got submitted to HN everyday but not many
got the chance to be upvoted to front page and attract traffic. So I built a
service called Porter[1] to collect HN submissions, filter out news about open
source projects and send digested email to subscribers. There is also a
`explore` page[2] at Porter which will show the daily submitted projects. You
can find from the page that only two or three projects get a lot of upvotes
and many projects got zero upvote at all.

I was wondering if many users are using Porter, I might have a chance to bring
traffic to those projects developed by solo developers and becoming good
channel for promoting and discovering. But just like those open source
projects, I have problem promoting my service too. I don't feel like to spam
people by submitting the url everywhere. There are organic growth but it's not
fast enough for me to put a lot of resource in it. I guess marketing for open
source related projects and services is always a hard problem especially for
solo developers.

EDIT: Those projects that got exceptional growth might have successfully
attract traffic from HN. But just submitting your projects to HN does not
guarantee any growth.

[1] [https://porter.io](https://porter.io)

[2] [https://porter.io/explore/](https://porter.io/explore/)

~~~
DandyDev
I'm subscribed to Porter and I really like it! Between Porter and Github
Explore I feel I have a pretty good picture about new projects arriving on the
scene. One request though: I'd love to see direct links to the Github repos in
question from the email and the web digest. It takes too many clicks to reach
the actual repos and I'm not really interested in the trend graphs that porter
offers

------
petercooper
I'm not here to promote my own publications, but if you search for basically
any language or technology that your project is associated with and follow it
with "weekly" or "newsletter" (e.g. "javascript weekly" or "python weekly")
you will almost certainly find a newsletter curator hungry to promote your
project (if it's any good or would be of interest to their readers). I have
almost half a million such subscribers now, plus about the same on Twitter,
across various developer niches.

------
lazyjones
Somehow it feels wrong to be using Open Source software based on the authors'
promotion efforts rather than the software's merit. It'd be better to have
fewer evangelists and more meticulous developers. Then again, just like
startups, mediocre projects can gain traction and improve significantly by
attracting decent developers with a good vision/mission
statement/presentation.

~~~
toper-centage
But I think the point is that users can't learn about projects that deserve
that merit unless they become popular.

~~~
lazyjones
Useful projects will become popular eventually through word-of-mouth, but
nowadays they have to fight promotion efforts by the less useful competition.
That's what I don't like...

------
warpech
In my experience, if the open source project solves a software development
problem, presenting it as an answer in Stack Overflow can drive lots of
consistent, long-term traffic.

~~~
lifeisstillgood
I had genuinely never thought that was even a possible channel - yet it seems
so obvious.

------
ImpressiveWebs
I'm totally biased here, but I feel like the newsletter option in the chart
should be higher. I mean, how much visibility will you get from a low-follower
Twitter account or a small blog?

I run Web Tools Weekly
([https://webtoolsweekly.com/](https://webtoolsweekly.com/) \- ~11,500 subs)
and Tech Productivity
([https://techproductivity.co/](https://techproductivity.co/) \- new, ~1000
subs) and I can tell you that any good open source project that fits will get
great click through rates.

I also recommend any of the newsletters by Cooper Press, which have way more
subscribers than mine do
([https://cooperpress.com/publications/](https://cooperpress.com/publications/)
\- see the top comment in this thread, by the founder of Cooper Press).

------
minimaxir
As someone with several thousand-star+ repos, I can say that the majority of
traffic (and stars) on each repos is strongly correlated with a Reddit/Hacker
News submission (although lately Tweets have been much better).

GitHub has deployed a project discovery widget on their logged-in homepage,
but I've never used it to discover a project.

~~~
westoque
The GitHub weekly popular projects/interests email has been getting me to
discover some really good projects as of late.

------
glangdale
This is not surprising. I've noticed that github stars, everyone's favorite
vanity metric _, go nuts if you wind up on the front page of HN for a while.

I'd be curious to hear if front-page or #1 status on HN correlates to deeper
metrics of engagement with OSS and/or engagement with new for-profit services.
Does going to front-page or #1 have a meaningful effect on, say a, SaaS
business?

_ Vanity metric seems about right - I noted that when a project I helped start
([https://github.com/lemire/simdjson](https://github.com/lemire/simdjson))
first got a wave of stars on HN, it tended to lag other OSS projects with
similar numbers of stars on other metrics of engagement. Despite being pleased
to see all those stars, one has to remind oneself that it's equivalent to
"yay, someone bookmarked us".

------
heliodor
I thought the purpose of an abstract is to briefly summarize rather than beat
around the bush and tease you into reading the whole paper. Reading the linked
summary of this paper was nothing but infuriating!

------
Gehinnn
I often find me searching for a package that does XYZ on npm and find just so
many. But most of them are either badly designed (!!!), have bugs, no typings
or just don't do what I would expect they do. The few good ones are just
impossible to find in reasonable time and I have to implement it on my own.

I think having a curated list of packages with clear categories and
alternative comparisons would be of great value to both package consumers for
finding an high quality package and package publishers for being promoted if
their package is of high quality.

~~~
lifeisstillgood
>>> The few good ones are just impossible to find in reasonable time and I
have to implement it on my own.

I think you just put your finger in bon's main problem - but how to turn that
into pypi/cpan??

------
boring_twenties
I personally avoid promoting my free software projects. I don't see any
benefit in doing so, only downsides.

I write the software for my own benefit. I then share it for the benefit of
others, but sharing it requires a near-zero amount of effort (`git remote add`
and `git push`, basically). I sometimes then derive a benefit to myself when
others improve or otherwise contribute to my work.

This only holds as long as my userbase consists mostly of competent technical
people who are able and hopefully willing to contribute, and not likely to
waste my time.

Dealing with support requests and so-called bug reports from non-technical
users that found out about my software from a blog post somewhere is simply
not a way in which I'm willing to spend my limited free time.

If I knew that my free software was being used by millions of people, I won't
deny that it'd give me a bit of an ego boost, but I am not sure it's really
worth anything at all, really. It certainly isn't worth the many hours of free
customer support (a thankless minimum-wage job even if it were paid) I'd have
to provide.

By contrast, having it be used by a handful of like-minded individuals, who
might contribute actual code, or simply talk about other interesting technical
topics, related or not, provides a ton of value for little to no effort from
me.

So I think I will continue mentioning my free software only in mailing lists,
and hope that no one ever sees fit to blog or tweet about it :)

I would be curious if some of you that _do_ care about promoting your work
would say why you care about it, though. Do you expect the popularity of your
free work to have an impact in your professional career? Or is the
satisfaction from providing value to so many people worth the huge extra
effort to get there? Or is it something else?

------
hartator
Super interesting. Good marketing is often crucial for the success of OS
projects. And it’s often overlooked by developers.

Fun that they named HN in it!

~~~
zabzonk
> the success of OS projects

How do you define success in this context?

~~~
jcoffland
The most important success metric for any software is number of users.

~~~
zabzonk
Why is that important? For me and my projects the important thing is that they
solve my problems, and maybe help some other people. The number of other
people they help is not something I care about, or can actually know.

------
kstenerud
I'm almost at the point in development where promoting my compatible
text/binary formats [1] [2] would be important, but I'm stuck for ideas on how
to do that. I've gone through all of the channels they list, but it seems like
a chicken-and-egg problem, where only eyeballs beget eyeballs. I've seen that
happen with other projects I've done, where it suddenly goes to 1000 stars
over the course of a month. But ask me how it actually happened and I couldn't
tell you...

[1] [https://github.com/kstenerud/concise-binary-
encoding/blob/ma...](https://github.com/kstenerud/concise-binary-
encoding/blob/master/cbe-specification.md)

[2] [https://github.com/kstenerud/concise-text-
encoding/blob/mast...](https://github.com/kstenerud/concise-text-
encoding/blob/master/cte-specification.md)

------
egfx
You can promote any GitHub project by adding
[https://2fb.me/](https://2fb.me/) in front of a URL. You can see it in action
[https://2fb.me/https://github.com/sheetjs/js-
xlsx](https://2fb.me/https://github.com/sheetjs/js-xlsx)

This is my solo project. It hasn't really taken off to date but who knows. If
you find it useful for your work, at the conclusion of the share it will ask
for a small donation.

------
tomquirk
It's interesting that email isn't more common in promotion of OSS. It seems
like there's lack of tooling and so people put it in the "too much work"
bucket. Email is one of the most successful marketing channels across all
industries and so it's a shame there's nothing out there for open source
makers to help them easily add email to their toolbelt.

I'm building [https://gitmail.io](https://gitmail.io), an email marketing tool
for open source projects. Reach out if you'd like to voice your thoughts!

------
crispyporkbites
If you're looking for the recommendations:

Open source project managers should consider the use of Twitter (47 projects
among thetop-100 most popular GitHub projects have active Twitter accounts),
Users meetings (which are organized or supported by 41 projects), and blogs
(which are used by 38projects).

Open source project managers should also consider promotion on social news
aggregatorsites. Successful posts on Hacker News may have an important impact
on the popularityof GitHub projects. However, only 10% of the Hacker News
posts about the studied projects have had some success.

------
PatrolX
They work on things people care about.

Then Hacker News and Network Effects takes care of the rest.

~~~
continuational
How many virtual DOM libraries were out there before React? Were none of them
as good?

Marketing is important.

~~~
egfx
Enyo for example.

------
abakus
One way is via comments, like this:

PyWarm, the functional API to build neural networks for PyTorch
[https://github.com/blue-season/pywarm](https://github.com/blue-season/pywarm)

~~~
j88439h84
Well _I_ thought it was funny.

------
marknadal
My project has 10K+ stars:

[https://github.com/amark/gun](https://github.com/amark/gun)

Most of the traffic has come from HN!

And a ton of organic search (tho my project has a generic name that is hard to
find in search) so word of mouth.

