I was working on creating a projects page for my personal website, https://adamzerner.bearblog.dev/. It hit me how many of my projects have been failures, and that I should reflect on them to see what I can learn. Perhaps I'll reflect on other ones in a future blog post, but here I want to reflect on a project that I am declaring a failure today: Connect Developers.

Here is how Connect Developers works. It's for programmers/developers. Developers fill out a fun survey, answering questions like "Performant code is important" vs "It's the root of all evil". Answering 1 would mean you feel very strongly that it is important. Answering 10 would mean you feel very strongly that it is the root of all evil.

Then you get put in touch with other developers who answered questions similarly to you. Eg. you'd get an email saying something like "You and Alice both answered the questions similarly and have been matched. Go ahead and set up a video call (Zoom, Google Meet, etc.)!"

I figured that this would be a fun thing to do. Answering the survey seems fun. And video chatting with likeminded developers also seems fun. Well, I know that not everyone is eager to have a video call with random strangers on the internet, but not everyone has to! I figure that there is some sort of normal distribution going on.

Some people are really averse to talking to strangers on the internet. Other people are very eager to do so. Most are somewhere in between. But since there are so many developers out there, I only need that light blue group. Or, rather, only a fraction of it.

Despite the project's failure, I actually still feel reasonably confident that the audience exists. The problem is that capturing this audience — really, nearly any audience — is tricky.

I think the chicken-egg problem is a huge reason why. Here's what I mean.

Imagine you come across the project in a Tech Crunch article talking about how cool this new app is that lets you connect with like-minded developers, and tells a few interesting stories about people who met through the app and ended up becoming friends. In that scenario, I expect people to be reasonably open to and interested in using it. Now, separately, imagine that you come across the project in the "new" section of Hacker News, see it only has two upvotes, no comments, and it looks like it was hacked together in a few hours as a side project. In that scenario, I expect people to be skeptical that it is "a real thing", and thus a lot less willing to give it a shot.

And rightly so! Projects in that reference class are in fact a lot less likely to "be a real thing", and users should be skeptical. But if everyone thought that way, how would you move from the second scenario to the first? That's the chicken-egg problem. There are solutions, but it is tough.

Here, I thought that there was a chance that various online communities (Hacker News, Reddit, Indie Hackers...) would just think the idea is really cool, upvote it, and it'd reach the front page. In which case it'd be somewhat close to that first Tech Crunch scenario, and people might start assuming that it is a real thing.

Separately, I thought that it was possible that people would be willing to fill out the survey and just see what happens. It's a fun survey, and it's low-cost. You're not actually committing to anything. If you want to backpedal, you could always not respond to the follow up email that tries to set up the video chat. Maybe people would still fill it out even if they only expected a ~10% chance of it "working" and getting them in touch with a cool new friend.

It's looking like these hypotheses have been shown to be false though. I posted once to Indie Hackers, and twice to Hacker News. The Indie Hackers post didn't get any upvotes or comments. It also only got eight page views! I didn't realize the volume would be so low. On Hacker News, my first post got two upvotes. Then the second got zero. Neither got any comments. There were 15 users who submitted the form, and a total of 686 survey question answers.

There are more things that I could do. I could try to acquire users "by hands", in a Do Things That Don't Scale sort of sense. I could try some ads. I could try other forums like Reddit. I could repost to Hacker News and Indie Hackers. I hear there's a good amount of randomness regarding how posts perform and whether they make the front page.

None of it seems worth it though. In order for this project to work, I think the reaction has to be one where people are eager to upvote it and share it with their friends, and thus have it grow organically. I don't get the feeling that that is the case.

Sure, I really only have three data points with my one Indie Hackers post and two Hacker News posts, but it's not that I am overvaluing these data points. It's that my prior for this working started out pretty low. This felt like the sort of project that was only worth investing a few hours in. Or, more qualitatively, only worth taking a quick stab at.

And it's not just these data points. This experience has prompted me to reflect on the more general question of "How hard is it to reach the front page of eg. Hacker News, in general?". I think that going into this project, my answer to this was too optimistic.

So, looking back, what would I do differently? What can I learn from this experience? Let's see.

Going into it, I didn't think too much about what would have to happen after making the front page of Hacker News. It just felt like it'd only take a few hours, and if it made the front page, those few hours would be worth it. Plus I was curious. It was an experiment, and I wanted to know what the results would be. Those two things alone seemed like enough to justify working on the project, so I did.

On top of that, I had a moment where I felt motivated. I try to take advantage of those sorts of moments. I had the idea for this project a few weeks further back, and it was sorta swimming around in the back of my mind. Then I was walking my dog one night, and ideas for the survey questions started popping into my head. I sat down on a bench and started texting them to myself. Then when I got home, I started writing the code. I think that there is some wisdom in taking advantage of moments of inspiration like this.

But at the same time, I want to push myself more towards thinking multiple moves ahead. Eg. here, I didn't really think much about what would happen after reaching the front page of Hacker News. I figured I could think about that if and when it actually happens. Technically I guess that logic might have made sense in this situation, but in other situations that sort of thinking is dangerous. The post Write a Business Plan Already does a good job of discussing why. If you think multiple moves ahead, you might realize that a certain path isn't worth heading down, which could save you a lot of time.

Yeah, I'm leaning against this idea that the logic of "Making the front page of HN is success; I think there's a decent chance of making the front page of HN; therefore this is worth pursuing" makes sense. Once I started thinking about what would have to happen after making the front page — eg. organic growth — simply making the front page of HN and then having the project die out afterwards didn't feel like such a successful outcome to me anymore. So more generally, maybe it is wise to think multiple moves ahead, in order to stress test your assumptions.

I do realize that this is in conflict with the other wisdom I mentioned a few paragraphs ago about taking advantage of moments of inspiration. They seem like opposing things that you have to balance. I get the sense that I erred too much towards taking advantage of inspiration though. And furthermore, that a sense of laziness and not wanting to think harder played a moderate role. I know it isn't always wise to push yourself towards the difficult and be maximally un-lazy, but for me personally, I think I need to move further in that direction.

I am happy that I "did a thing" though. I know a lot of people struggle to "pull the trigger" on stuff like this. Like I was saying in the previous couple of paragraphs, I probably am too trigger happy, and thus haven't found the right point on the spectrum yet, but that's ok. I'm working on it. I'm glad that I am not stuck in a position of never being able to fire, and I'm glad that I am actually reflecting on my experience and trying to improve.

New Comment
21 comments, sorted by Click to highlight new comments since:

The thing that jumped out to me about this is that it seems too open-ended.  In my experience, meeting with strangers is much easier and less scary if there is some point or goal other than "meeting with strangers who have similar views as you".  

Like, even if it was just to write a simple program together and it was obvious that this was just to give you something to talk about, I think that'd help a lot.  There's tools out there for doing collaborative coding online, you could maybe link to them or set up some sort of template on one of these.

I agree with AllAmericanBreakfast's comment where he says people miss having ways to have open-ended conversations on the internet, but I also think it's good to have some method of breaking the ice to get that conversation going.

All that being said, my weakly-held belief is that good and well-executed ideas are entirely insufficient to gain attention (in fact "good" and "well-executed" are not even required to gain an audience and attention).

The thing that jumped out to me about this is that it seems too open-ended. In my experience, meeting with strangers is much easier and less scary if there is some point or goal other than "meeting with strangers who have similar views as you".

For sure! This is something I thought about actually. I agree that it's a little tough to just bootstrap the conversation. Having prompts would be better. I wanted to do something like http://36questionsinlove.com/, but for friendship. I just couldn't figure it out quickly, and didn't want to sink too much time into the project. But if I or anyone else does figure out the right prompts for friendship, that strikes me as the seed of an interesting project.

One thing you might have tried is to simplify. Instead of asking all the survey questions, just randomly match developers with no additional criteria. Give them the opportunity to write a short self-description, put in their email address, and then send introductory emails containing contact info and short self-descriptions to each pair of people who match. A friend and I did this for the EA community, and it got quite a bit of use. People also sent us pretty extensive feedback, indicating they were getting substantial value out of it. We didn't even automate it. Just did it with a Google form and manually sent the emails. Our bottleneck was coding, hosting, and getting institutional support. The internet used to have much more in the way of random connection with strangers for open-ended conversation, and I think people miss it.

One thing you might have tried is to simplify. Instead of asking all the survey questions, just randomly match developers with no additional criteria.

Yeah, maybe. It didn't take very long to deal with the survey part of it, and my sense is that it added value versus having a short description, because it seems cooler to match with someone who is like-minded versus someone random.

A friend and I did this for the EA community, and it got quite a bit of use. People also sent us pretty extensive feedback, indicating they were getting substantial value out of it.

That is super cool that you and your friend did this successfully for the EA community! Kudos to you guys! That makes me happy to hear. I'm thinking now that doing it for small communities like that makes a lot more sense than what I tried. I expect that in small communities like the EA community, where there is some existing sense of connection and where it is a pretty safe assumption that people are like-minded, people would be a lot more willing to meet over video-chat, and would probably get more out of it.

Seems applicable to LessWrong as well. If it had success in the EA community, that seems like very strong evidence that it would also have success with LessWrong. Anyone wanna give it a go for LessWrong? If not I probably will at some point.

The internet used to have much more in the way of random connection with strangers for open-ended conversation, and I think people miss it.

Huh. Care to elaborate, or point me to any resources? I'm interested to hear more about that.

I don't know what AllAmericanBreakfast had in mind, but for "random connection with strangers for open-ended conversation", what leaps to my mind is Usenet. In its heyday it was wonderful. It took a blow from Eternal September, but in the end I believe it was blogs that killed it As soon as LiveJournal invented blogging for the masses, most everyone preferred to write in their own personal space on the net instead of the town square, and left in droves. In principle Usenet still exists even now, and a few pockets of it still have sensible activity, but it is as lichen creeping on rocks compared with the tropical forest it once was. It is at least fifteen years ago that I finally left, recognising that I only still hung on out of sentiment for what it had been.

I'm thinking now that doing it for small communities like that makes a lot more sense than what I tried. I expect that in small communities like the EA community, where there is some existing sense of connection and where it is a pretty safe assumption that people are like-minded, people would be a lot more willing to meet over video-chat, and would probably get more out of it.

 

This is a good point - maybe it's best to start by creating tech to build connections within a niche community with a strong sense of identity. This reminds me of the origin story of Facebook, building connections just within Harvard. I can see how the questions you were asking could be viewed as ways of finding subsets of developers with a strong sense of shared perspective as coders. Given how large and diverse the world of software development is, I can see how this would be necessary.

Second version of the "simplify" idea - what if you worked to discover the most unusually passionate, specific, and niche "developer identity" you could find, and created a micro-targeted app just for them? The most important feature for such an app might be creating a description and name for the app and the community it's designed for that most compellingly describes that identity. It would be a description where its users will read it and have a powerful reaction of "YES, THOSE ARE MY PEOPLE!"

You already have the software, so it seems like the main part of the work would be in figuring out what that identity is. A combination of intuition, surveys, and interviews might let you make progress. I'm guessing you'd be looking for people interested in open source, niche languages, creative coding (generative artwork?). I imagine that professional developers and students in CS departments already tend to have a lot of opportunity to connect with other programmers, so figuring out the subset of programmers who don't feel they have that social outlet would be key.

Huh. Care to elaborate, or point me to any resources? I'm interested to hear more about that.

I'm remembering my childhood experiences of the internet, with group chats with strangers and also applications that would serve up random web pages. Now that I'm thinking about it more, I'm less confident about how random it really was - that was just my childhood impression! The internet used to feel more wild, perhaps, and so open-ended exploration felt more valuable. Now, finding the needle of interest in the haystack of content is more challenging.

I was actually envisioning connecting niche communities as just a separate thing entirely from what I was trying to do in connecting people from a broader community. But I think what you're saying about how the former often paves a path to the latter makes total sense, and Facebook is a great example! I'm not sure why I didn't see that at first; it's funny how many things become obvious in retrospect.

That second version of the simplify idea is interesting. I agree that the difficulty is in finding that group of people. The first thing that comes to mind are niche programming languages/libraries/frameworks. But there the people who feel passionate about them very well might already be in touch with each other.

The internet used to feel more wild, perhaps, and so open-ended exploration felt more valuable. Now, finding the needle of interest in the haystack of content is more challenging.

Hm, an analogy that is coming to my mind is walking around a town with lots of mom-and-pop shops versus walking around a city with lots of chain stores and fast food places. Stumbling across a mom-and-pop shop feels kinda random because it's new, whereas seeing another McDonalds doesn't feel random. Is that what you're going for? Do you also remember you or people you know connecting with strangers in a way that lead to eg. phone calls?

The first thing that comes to mind are niche programming languages/libraries/frameworks. But there the people who feel passionate about them very well might already be in touch with each other.

My experience with the EA chats project was that, although there were lots of people who'd be happy to connect with likeminded folks, they were nervous about taking the initiative to reach out to specific people and ask to chat. Having a mechanism by which they could be assured of being connected with others who wanted the same thing seemed to eliminate this problem. Likewise, while I'm sure there's an internet message board for almost every interest at this point, that doesn't meant there's a way for people interested in forming real-life relationships to do so.

When I was a kid, there are lots of reasons why internet chats didn't turn into real-world connections, and I think that's appropriate for children. So no, these experiences didn't turn into phone calls. But I've had quite a few zoom calls, and one extended real-world friendship, that were the result of requesting to be contacted or contacting others via the EA and rationality forums and on Reddit. These have always been positive experiences.

In fact, that might be a way to start seeking out passionate people to connect via such a service: just find subreddits with a high activity-to-members ratio. Two I can think of off the top of my head are the 3D printing subreddit and the Anki (flashcard) subreddit. I could easily imagine that devotees of these technologies might enjoy forming real-life friendships with others who share their hobbies. And I could also imagine that few people in those communities have consciously realized this desire - there's little to no cultural concept of "the 3D printing community," much less the "flashcard community," as a resource for finding friendships and for dating, although there's lots of community to support the use of the technology itself.

Creating technology to support that becoming a thing seems like a relatively easy win. And it makes sense. After all, it's not just a love of memorization and plastic sculptures that draws these people together, but a sense of creativity, passion, and a certain idealism/valus that they find realized in the technology itself.

If you continue with this, you should probably also ask some of the questions my collaborator and I tried to address. If the tech catches on, how will you deal with trolls, thieves, complaints, and so on? I'm not sure why these services aren't more common - like why doesn't Reddit facilitate this on its platform? I'm sure there are interesting answers here that bear on the tractability of such technology, but I don't know what those answers are!

My experience with the EA chats project was that, although there were lots of people who'd be happy to connect with likeminded folks, they were nervous about taking the initiative to reach out to specific people and ask to chat. Having a mechanism by which they could be assured of being connected with others who wanted the same thing seemed to eliminate this problem. Likewise, while I'm sure there's an internet message board for almost every interest at this point, that doesn't meant there's a way for people interested in forming real-life relationships to do so.

Great point, that makes sense.

In fact, that might be a way to start seeking out passionate people to connect via such a service: just find subreddits with a high activity-to-members ratio.

That does sound like a good idea! There are a few other projects I'm feeling more excited about right now so I don't think I'm going to pursue it. But I have added it to my list of ideas.

If the tech catches on, how will you deal with trolls, thieves, complaints, and so on?

Yeah that is an important question. It seems like a very difficult problem in general. I think big companies like Facebook have some sort of AI thing that tries to detect it, but my impression is that they haven't had much success.

One thing is that I might want to talk to people I disagree with. OkCupid has a feature where you can say like “I smoke” but also “I want a partner who doesn’t smoke” (not sure why you would want that, but there it is)… maybe I would want to meet someone who is more disciplined or serious about certain things to see if I should get more serious about those things for example. Smart people are sick of echo chambers.

Yeah I see the appeal in that. But for this app it didn't seem worth investing in that sort of either or functionality, and if I have to pick one, I expect people are more interested in matching with those who agree than those who disagree.

Upvote for the post-mortem, and great happiness and congratulations for "did a thing"!

I think the "write a business plan already" is absolutely key here.  And really, you often only need a business sketch, not a plan.  What customers/developers have this need to connect, and why is this method any better than the hundreds of other community and discussion sites that exist?  

What IS success for this?  Number of surveys taken?  Number of initial messages sent?  Actual calls made?  Long-term friendships formed that still stay in contact after 10 years?  It's easy to tell if it's not successful if you don't get many page views or initial uses.  It's not easy to tell if part of it is successful and needs expansion, or if it just doesn't have as big an audience as you think,.  

Some people are really averse to talking to strangers on the internet. Other people are very eager to do so. Most are somewhere in between. But since there are so many developers out there, I only need that light blue group

That light blue group may be a VERY thin tail.  I think "chatting with strangers over the internet" is probably NOT attractive to the vast majority of people, and software developers even less likely to want that.  You also have the problem that this thing is poisoned by a few bad actors, and that happens SO frequently in other domains that it's a fair assumption that if I give any contact information to a stranger, I'll regret it.  

I may be wrong, and there's a significant market for this.  But I'd expect you have to solve the problem of initial anonymous/blockable contact and reputation before your target market will even try it.    

great happiness and congratulations for "did a thing"!

Thank you!

I think the "write a business plan already" is absolutely key here. And really, you often only need a business sketch, not a plan.

Yeah, I agree. As my thoughts settle after this experience, that's the main thing that keeps swimming around in the back of my mind. And that's so true about only needing a sketch, not a plan.

Btw, it's good to get this data point of someone really liking the "write a business plan already" idea. The post didn't receive many upvotes, which surprised me and makes me question whether there is something unwise about it. I guess what I'm saying is that I notice some confusion, and so data points here are helpful to me.

What customers/developers have this need to connect, and why is this method any better than the hundreds of other community and discussion sites that exist?

Well, there are places to chat with people, but a) it's usually centered around some topic. Like if you join a Discord group for a particular programming language, the types of conversations that are expected are different from the types of conversations you'd have if you sat down to get coffee with someone. I'm not actually sure where you would go if you were looking for the latter type of conversation. Anything come to mind for you?

b) I think having those types of coffee shop conversations via text is different from having them via video chat (which is different from having them via email, which is different from having them in person). Perhaps the differences aren't very large, and there is a substitute good sort of thing going on. OTOH, perhaps not. I don't feel particularly confident that text is sufficient for the large majority of people, and they wouldn't be excited about video chat.

What IS success for this?

I think success is utilons generated. If you have fun filling out the survey and then decide not to follow through and actually do the video call, that generates a pretty small amount of utilons. If you have one call and it is ok, then that generates some utilons. If you make a long term friend, that generates a ton of utilons.

I agree that it is hard to tell these things though. I was thinking that you can ballpark it and assume that something like 50% of the matches end up having a video call, and 1% of those end up being friends. And that if the app actually did get a lot of users, I could email them asking them to report on their experiences. Definitely not perfect, but a) I don't see better alternatives, and b) it doesn't seem imperfect enough to make this idea a non-starter.

That light blue group may be a VERY thin tail. I think "chatting with strangers over the internet" is probably NOT attractive to the vast majority of people, and software developers even less likely to want that.

Yeah, the more I think about it the more I think you might be right about that.

You also have the problem that this thing is poisoned by a few bad actors, and that happens SO frequently in other domains that it's a fair assumption that if I give any contact information to a stranger, I'll regret it.

Ah, that's a good point. Well, what exactly did you have in mind? The app feels extremely side-project-y, so I wouldn't expect people to be worried about data harvesting. But now I'm thinking about stuff like chat roulette and how there is such a high proportion of weirdos there. Seems like moderately strong evidence that it'd be an issue for Connect Developers too.

I'm not actually sure where you would go if you were looking for the latter type of conversation. Anything come to mind for you?

Nope, but then I'm not looking for this, and I can't quite identify WHY someone would look for this (with no geographic or in-person possibilities).   

I was thinking that you can ballpark it and assume that something like 50% of the matches end up having a video call, and 1% of those end up being friends

This is the principal thing in an early-stage business plan / sketch.  Write down your assumptions and unknowns, and figure out how to validate your beliefs.  For most of these kinds of ideas, you should be optimizing for 5-10 attempts, and getting as much information from each.  "Fail fast" is how this is often stated, but that's not complete.  "Fail legibly" would be better advice.  Generate hypotheses about why people aren't loving it, and find ways to test those ideas.

The app feels extremely side-project-y, so I wouldn't expect people to be worried about data harvesting.

You don't just need to assert that you're not misusing data, you need to overcome the expectations that have been set by all the crappy chat/discussion/etc. sites in the world.

My prior is pretty high that SOMEONE is harvesting any data I give out.  Whether it's you, or the stalkers who've created an account and filled out every possible profile on your survey, or just the fact that I don't like most people, and people is who your site attracts, I would only try it with burner info.  And most people won't bother with that.  

The name might have been part of the problem. “Connect Developers” sounds like the group of devs who use a language or library called “connect”. (Like “react developers” are developers who use ReactJS.) “Developer Connect” would be better. Or “Hacker Omegle”?

Agreed that the name is pretty bad. I don't suspect that it is part of the problem though. In my Hacker News submissions, the text was "Show HN: Video chat with like-minded developers (connect-developers.netlify.app)". And the header on the website is "Video chat with like-minded developers". So "Connect Developers" doesn't seem like it is being used in any meaningful ways. The reason I stuck with the name is because I couldn't think of something better and wanted to be agile/lean about not letting it be a timesink.

My first impression was that the survey was "too much."

  1. Many (20%?) Of the questions used jargon on at least one end of the scale. I happened to know about half of it, but that's quite a filter even within the programming community
  2. There were about 3 times as many questions as I expected for a quick connection thing. This isn't eHarmony, I don't need a compatible life partner, just someone vaguely in the same mindspace. And as another reply mentioned, "person who has seen that page who is willing to participate" is already a ton of selection effects.
  3. A 10 point scale, while common, didn't fit on my phone. And in reality, those scales are have a resolution of at most 5 (Very, Kinda, Neutral, Kinda, Very) and usually 3 (this, meh, that)

You can answer as many or as few questions as you'd like. Perhaps I should have made this more clear though.

Many (20%?) Of the questions used jargon on at least one end of the scale. I happened to know about half of it, but that's quite a filter even within the programming community

Yeah, that's something I expected. Eg. a front end developer not knowing what an ORM is. But I figured that it'd be ok since it's all optional.

This isn't eHarmony, I don't need a compatible life partner, just someone vaguely in the same mindspace.

I actually disagree with this. I expect people to be attracted to the idea of filling out a long-ish survey and then being able to be matched with someone who is very similar, rather than vaguely similar. Vageuly similar feels notably less exciting. I don't feel strongly though, maybe I'm wrong. Good to get this data point from you.

A 10 point scale, while common, didn't fit on my phone.

Huh, that is surprising. I actually did try to make it look decent on small screens. The buttons are supposed to wrap, eg. 1-5 are on a top row and 6-10 are on a bottom row. Is that not what happened for you?

Was there an algorithm or distance metric running in the background? Was matching people and sending the emails fully automated?

No and no. I didn't think it'd be worth doing either of those things before I knew there'd actually be enough users to justify the investment of time. So I ended up just sending the emails by hand.

That is what happened... which means I had one word on the left, one on the right, and two rows of number buttons below them. Not a good look.