Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: Coffeehouse, one-on-one voicechat with random HN users (coffeehouse.chat)
209 points by amadeuspagel on Feb 2, 2022 | hide | past | favorite | 123 comments



I wrote something similar (Lunchtime.io) as a way for the Open COVID-19 Initiative to relax with other members. One issue I found early on was that people would wait for ages to get into a call and leave. So we solved it by letting people pick times which suit them, showing how many people had picked that time, receive email reminders when that time approached and once the time came up, we’d give them a link. made things so much smoother and i had some incredible talks with people although… it was v awkward sometimes.

That being said, project got sunsetted because open source projects always make way for priority so love to see people love this.


I made something very similar neartribe.com to allow multiple users to video chat with each other based on distance proximity & interest


That's really cool. Can you add other login options?


From about:WebRTC in Firefox,

> iceServers:

> urls: ["stun:stun.l.test.com:19000"]

With such a STUN server URL, no wonder nobody ever gets a match…

And it's kind of a nasty bug: it doesn't appear anywhere in the JS console, or in the network tab of the browser, and it's likely to work when testing locally (I haven't tested, but you should not need stun to generate local ICE candidate) so the dev could have tested in local, seen it was working and posted it on HN. Just to discover it was not working after reaching the front page… Sad day for the poor dev.


Thanks. I replaced that with an array of servers.


But it still doesn't work, because there should be “stun:” at the begining of the URL.

(Otherwise you get this Error “RTCPeerConnection constructor passed invalid RTCConfiguration - improper scheme” (Firefox, but you should have a similar one in any browser))

Edit: https://news.ycombinator.com/item?id=30185324 has the error as it appears in Chrome.


Yeah, that was incredibly stupid of me, that's also fixed now.


I haven't used this, but there was a submission recently for adding LoginWithHN functionality. Maybe this could be used to verify HN users.

https://loginwithhn.com/


Appreciate the shout out!

I just released self serve client app signup so everyone who’s making stuff for HN like this please check it out —- you should be able to build your OAuth2+OIDC login flow right away.


Thanks for introducing MVP.css[1] through your work Victor, Your design aided by MVP.css completely aligns with my design preferences and would be using it my next project to save some time.

[1] https://andybrewer.github.io/mvp/


Glad to! it's such an awesome CSS microframework. Love keeping track of good tools/libs like that.


In that case, You might like my curated list of startup tools at StartupToolchain[1]; Just added MVP.css to it.

[1] https://startuptoolchain.com


This is really cool, thanks for making it!

I wonder if it would be possible to limit Oauth access to accounts with a minimum karma level? Maybe it's a problem that doesn't exist yet, but I could imagine it would help defend against spammy throwaway accounts.


Hey sorry for the delay, but karma has been added as part of the data relayed by OAuth2.

You can easily disallow someone from logging in via your app once you get the data related to their OAuth2 token.


This would be awesome if it works. Though I tried and waited for a while with no match - I suspect it’s a proof of concept to judge demand. Would be better if I could actually read HN while waiting, might make people willing to keep waiting longer on mobile.


> I suspect it’s a proof of concept to judge demand.

No it actually is meant to work, though, I admit, it doesn't seem to.

> Would be better if I could actually read HN while waiting, might make people willing to keep waiting longer on mobile.

Interesting idea.


> Would be better if I could actually read HN while waiting, might make people willing to keep waiting longer on mobile.

It actually would be really interesting if there was a functionality to chat with other people viewing the same article. Or still one-to-one, but with someone else also looking at the article.


Oh that could be great, especially if there were someone (like the submitter, or just with the right personality) to get people talking.

Would hate for something like that ever to detract from the reading experience though - e.g. someone with something great to say or niche experience etc. tells their story then feels no need (or lacks the energy/motivation) to write it out again.


you could also add some statistics of how many users there have been in the past hour. or how long people have been talking. (just add up all the talk time for the past hour)

just to get an idea how active the service is.

later also show stats for 24 hours to see which daytimes are busiest and more likely to meet find someone online.


it seems no one is able to match on HN.. is this a glitch or the original goal ?


This site could implement LoginWithHN if it wants to cater to only Hacker News users

https://loginwithhn.com/

https://news.ycombinator.com/item?id=29923736


Appreciate the mention :)


It's great that something was built. Amen.

Similar problems to chatroulette, i.e., cyberdisinhibitionism, backgrounds/communication impedance mismatches, although hopefully not as many flashers.

My luck, I'd get the homeless guy at the coffee shop breathing into the microphone saying "I never use my real name. And, I always wear extra tin foil in winter when the mind beams are stronger. The FBI has a file on me a mile high. They're out to get me. Do you hear those voices too?" (This is based on the personality of a real, harmless person who did live in 24 hour coffeeshops in SV.)


Until you said it was someone in SF I was like, dude, we must have got off on the wrong foot, but I live in Canada. But actually, the idea of HN flashers made me think that I should make a version of this app just for HN flashers. We could make them into charity NFTs.


I've just changed the DNS settings to a deno deploy instance, rather then my own server. (I initially used my own server, because in deno deploy it's split accross regions, so you have to find a match in your region.)

If that doesn't work it might be that the DNS change didn't propagate yet to you, please use https://coffeehouse.deno.dev/hn.


while that does make sense, i am in a pretty isolated region and i'd like to pick a specific different region.

also, while i am at it, i'd prefer a small group rather than one on one.


> while that does make sense, i am in a pretty isolated region and i'd like to pick a specific different region.

Really, people shouldn't have to be aware of regions at all, which is why I initially wanted to use just one server, rather then deno deploy. (I still plan to realize that with deno deploy, it's just harder.)

> also, while i am at it, i'd prefer a small group rather than one on one.

Thought about that, but one-on-one seems simpler in many ways. There's never the question of who starts speaking. If one person stops, the other starts. It's also easier for two people to find a common interest then for more.


right, no region is better than being tied to a specific region.

one-on-one requires everyone to speak. with more people some can listen and only speak when they have something interesting to add.

if the two people don't have a topic then there will be an awkward silence. with more people it is also easier to find any topic to talk about.

for introverts getting started is difficult, but ending a conversation equally so.

in small groups people can join, wait until they are asked to introduce themselves, listen until they have something to say and leave whenever they need to without inconveniencing anyone else who wants to continue to talk.


Cool idea. I spent a few minutes waiting for a match but no luck, so I’ll try again later. If this link was shared to say, Reddit or 4chan, would it be fair to say we wouldn’t pair with random HN users?


It might be fun to use the referer (sic) to match users coming from the same site.


I thought about that, but many people use HN via RSS, via other sites that scrap it, etc.. And of course people might want to use it from the address bar.


Of course I have no way to know who really is an HN user. But why would anyone who isn't use an app that's marketed as voicechat with random HN users?

In the long term, I want to make it possible for everyone to have their own coffeehouse ... voicechat with random people from your favorite subreddit, readers of your favorite blog, etc..


Why would a user ever use a product in a way we didn't intend?


I'm not sure what exactly your concern is. Someone just trolling? The nice thing about this concept is that no one can waste more time then they're willing to spend themselves. But if people just want to talk to HN users, even though they don't use it themselves, I think that's fine?


My answer is tongue-and-cheek. Users will frequently find innovative ways to use open products in unintended ways if there is a value proposition - even if the only value proposition is to troll a random stranger on the internet.

Maybe they work out the matching algorithm to consistently connect with exactly who they want to connect with. Maybe they can get IP addresses or PII or social engineering returns from meeting people.

All that said, that doesn't mean this project isn't valid, fun, cool, innovative, or has potential. Its an impossible expectation to want every side project to have perfect security, authentication, and user-verification/moderation.

I just want to make the point that there's a very high likelihood people will do weird shit with it.



Keen to try this, though unfortunately I'm at work at the moment.

On a similar note, is there an (un)official HackerNews IRC/Slack/Discord of some kind? A few times I'll be trying to find an article/comment section of something I remember reading on HN, but can't find it using the search or my upvoted submissions. It would be nice to have somewhere I can ask minor questions without making a post.


I'm confused why it would take any time at all to find a match. Sounds fun and weird and a little awkward, just how the internet should be. But I can't seem to be matched with anyone.


I'm using deno deploy, which is split accross 25 regions, so you have to match with someone from the same region. (I tried to use my own server at first, but it crashed, so I switched to deno deploy in a hurry, without having figured out how to connect it accross regions.)


seems the many regions spread the potential users to thin. you probably want a stronger single server because connecting chats across multiple servers only makes your code more complex when your actual problem seems to be that you just need more ram or cpu.

alternatively consider using existing platforms like jitsi. the benefit of your site is not the implementation of the audio channels but the ability for HN users to find each other. you could create a frontend where HN users join but are redirected to a jitsi room once they are matched.

unless of course part of the point is for you to experiment and learn webrtc and related technologies...


> seems the many regions spread the potential users to thin. you probably want a stronger single server because connecting chats across multiple servers only makes your code more complex when your actual problem seems to be that you just need more ram or cpu.

I checked ram and cpu with top when I was using a VPS, and it was basically nothing. (I didn't monitor it continuously, so maybe that was still the problem.) But you're right in principle, I should use one server.

> alternatively consider using existing platforms like jitsi. the benefit of your site is not the implementation of the audio channels but the ability for HN users to find each other.

But once people found each other, it's webrtc, it's p2p, so that shouldn't be a problem for the server.


then i'd suggest to go back to a single server and find out what causes the crashes. you can keep the current version running in parallel and tell people to hit your single server for testing.


Yes, I've been waiting (still on) for about 10 minutes so far on Chrome (adblock disabled) to ensure browser compatibility. I started a timer for a different task at around the same time the wait started, so this measurement is fairly accurate.

Update 1: A match didn't occur yet, 30 minutes total wait time.

Update 2: Still no match. I entered the wait room for the original submitted link and left the tab open for 30 more minutes in the background (2:48 pm ET to 3:18 pm ET), with unmuted headphones on. 60 minutes total wait time across sessions.


This is a neat idea. Didn't work when I tried it. Here's something similar I built last year: https://speakeasy.co/hacker-news


I made something very similar. neartribe.com where you could video chat with people near you. Ran into similar problems as @sailorganymede where users would need to wait very long to be matched with someone & eventually get bored & log off.

The project is still live but in retrospect I would have started with a niche audience & let them decide on a time before hand. Then start on demand matching only when the site reached a critical mass of users.

On a side note I am impressed that your post reached the top page & got >150 upvotes. When I tried posting I was only able to get 3-5 upvotes :/


I can just imagine how uncomfortable half the conversations will be.


I hate voice chats, just like I hate phone calls. I would feel much less awkward having a video chat with a stranger than just a voice call, though of course text is the best.


Cool idea. I'm stuck waiting for a match for a few minutes.

It would be great if it could show how long it takes on average until one is matched with a partner. Maybe it could also show how many people are chatting right now.


How has this been voted so high up given that it:

1. Doesn't seem to work for anyone

2. Doesn't have anything specific to do with HN users. Since anyone can use it, it's just a random voice chat connection website.


The idea was really interesting, though it's too bad the software didn't work for me.

Still, I learned a lot from the comments (e.g. the problem of a server overload and fix of switching to a distributed server as a workaround; the jitsi platform; the importance of user statistics (e.g. number of people chatting right now, average time for connection) to encourage people to stay on; and the bug that another user found that may have caused the software to work locally, but not when deployed [0].

[0] https://news.ycombinator.com/item?id=30183557


Goes to show the relative power of titles over content in getting stuff to the front page. And makes one wonder how much awesome stuff is buried because the title wasn't shiny enough.


i am guessing to many users killed the initial server. the workaround of distributed servers doesn't allow people to connect if they are not on the same server.

it's not easy to find a solution for that on the spot. give it time.


Has anyone actually gotten a match? How long did it take?


Still no match yet. I was waiting for 10 minutes on the submitted link, but didn't get a match. I then waited 20 minutes on https://coffeehouse.deno.dev/hn recommended by the developer in the comments, but also haven't found a match yet.

Update: No match yet, after another 30-minute session. I opened the wait room for the original submitted link and left the tab open for 30 more minutes in the background (2:48 pm ET to 3:18 pm ET), with unmuted headphones on.


I had an amazing conversation with someone random. It struck me how much more effective talking is than having a conversation through text. Got an instant match after turning off blocking of newly registered domains in my DNS filter.

A (relatively) narrow interest pool (like HN) makes talking with someone about common interests highly attractive. Qudos to the creator.


If there aren't enough simultaneous users, consider running chats on-the-hour or the ability to schedule.


Considering how long I have been sitting here to have a chat with someone makes me realize this is one of those "everyone would like to use but nobody has the time to use" kinda project.

The nichification of social networks suffer from this problem of loving it vs having the time/effort to use it. Maybe a button on HN here would make it more approachable to people but not as a standalone site. Funneling people outside of their common interest space is super hard and unsustainable without appealing a to a boarder group and forming a unique community within itself. But in that process you just lost your original vision.

For this app, I would suggest incorporating features from Omegle. Having a chat section and having a status section would be nice.

Not being dismissive at all but this is just a rant :/


I'm seeing an error:

DOMException: Failed to construct 'RTCPeerConnection': 'stun.l.google.com' is not one of the supported URL schemes 'stun', 'turn' or 'turns'. at createPeerConnection (https://coffeehouse.chat/hn:70:40) at startChat (https://coffeehouse.chat/hn:56:42)


Very nice. I've had some great conversations recently with HNers and wondered if there could be a "Who's Networking" monthly post for different topics.

Will definitely try this out!


Read through the takeaways in this thread written by the handful of HN users who attempted similar ideas. These ideas can be generalized and applied to real-time online communities -- have chat & status sections to indicate who & how many people are available, some notion of scheduling so that users can meet online at the same time (i wonder if there's a less-friction method than explicit scheduling), tie user to a profile to discourage undesirable behavior like flashing.


I logged on to Omeagle after about 20 years of thinking it was dead and my eyes burned off on the first try... It's majorly creepy as it was in the past, and very NSFW as well. One on one audio chat sounds cool provided you can keep the NFT and Crypto madness, catfishers, hackers, and scammers all at bay... And audio only is a better idea as a first meet method. Maybe limit users to 1 call per hour to discourage bad behavior... I bookmarked it.


It didn't work, I tried a couple of times and even got a mach but nothing happened. maybe It has something to do with a js error in the console

hn:78 Uncaught (in promise) DOMException: Failed to execute 'send' on 'WebSocket': Still in CONNECTING state. at RTCPeerConnection.peerConnection.onnegotiationneeded (https://coffeehouse.chat/hn:78:29)


Do you use voice verification with any of the institutions you do business with? Then you ought to never allow some random domain access to your microphone.


It's pretty cool .. I got matched in like 1 min with a guy in europe and we had a friendly conversation for like 5 mins. Worked pretty neat I think


Lots of people mention having to wait a long time. Perhaps you could have a countdown timer for when people should check back (next session starting in 3 hours and 22 minutes!). You could also have a form so people could get an email reminder, or perhaps a browser notification.

Presumably this would help overcome the initial coordination problem, and over time as the user base grows it would be less and less necessary.


Hack Roulette


While I like the notion and appreciate the witty nomenclature, before anyone rushes out to register a domain anything like it - I must say that in my experience, the cat roulet folks (spelled that wrong on purpose btw) are quite aggressive at taking people to icann court or whatever it's called and forcing you to give up similar domain names.



How does it discern that its a HN user?


Ask them if they have a putnam?


I work on a similar side project called one-on-one.tech

People can schedule one-on-one meeting with their interests. Others can then get in contact to arrange a virtual/real life meeting.

Current focus is on bigger companies but an open version is out for everyone to use.

Feel free to get in touch with me!


I'm pretty sure I've shared this anecdote before - when I was working at Thomson Reuters at one point HR was doing some sort of reach out to accountants that used our services and doing like socializing stuff with them and at one of these social get togethers where HR was doing their best to get the accountants to be sociable one of them stood up and said "You do realize we didn't become accountants because we like people?"

When I heard about it I really felt a deep connection to that accountant. Sure hope I never meet him.


I have tried Lunchclub. I liked the fact that it relies its user base with work and professional background. However once the initial contact is made, ongoing conversation rarely took place. Hope this solves the problem of ongoing conversation.


Waited about 10 minutes and did not work. From what I’ve read it’s because it only connects you if you’re connected to the same server, but OP has like 20-something distributed servers so that might not play very well.


This is timely for the "Find a Freelancer on HN" thread :)


I liked the idea, wanted to give it a go.

At first try the website did not load, a few refreshes later I can now see the home screen but nothing happens when I click anywhere on the page.


For anyone else troubleshooting I learned Firefox on iOS isn’t allowed to use the Web Audio API, so things seem broken when trying to connect to a recording device. You’ll have to use Safari.


Try it again, it should work now.


Just had a nice little chat with a stranger. Thanks!


Really cool! Are headphones a must for now...?


No. It just says that because if you do you use headphones, it would awkward if you take them off and then you don't hear it when you're matched someone wants to talk to you.


Okay, thanks.


Cool idea. Matched with someone instantly


Why would I want to talk to you people.


A decade ago this would have been art.


It still is.


A look at the source code, and I'm not entirely sure how this thing is supposed to work at all.


nice idea: why don't you write a browser extension that would work for ANY web site? So whenever we browse, we can see how many people are reading that URL or domain, but decide to talk?

It's like Clubhouse around a URL.


It works for me. Love it.

Please tell me how I can build something like this?


I like the idea. Too bad it can't handle the load


Try it again, it should work now.


Well that's a proper Show HN


time 1634 PST, I'm hanging out on in this coffeehouse thing. Bueller? Bueller?


looking for a match


This is my nightmare


I tried four of these chats.

The first just rambled about how much PHP sucks and how great Postgres is, for no apparent reason.

The second touted how amazing Kubernetes is, and then asked if I could help them configure it for their small project.

The third went on a long rant about how they could build Zoom as a weekend MVP.

The fourth tried to explain how we should run the entire world on SQLite.


Impossible to distinguish if this is satire or reality.


The sign of a great writer


Hahaha. It took my brain until the 3rd example to realize this is a joke.


Sure, real rants are about building a much better Zoom as a weekend MVP.


I want to talk to that 4th guy.


On the plus side, you didn't get any Covidiots or transphobes, so you got the wholesome end of the HN user base.


This comment is giving me such a laugh. Mine too. When I visited the site out of morbid curiosity I saw that all I had to do to realise my nightmare was to click. Click anywhere. Click anywhere to start.

I had to hurl my computer off the bridge into the river to ensure I didn't click anywhere to start.


Even if you click, the text changes to say: "looking for a match ...

keep this tab open and your headphones on for a while ..."

There's no indicator for how long the queue is, so a match could happen at any time. The serif font, lack of sentence capitalization, and repeating stock photos of the espresso cup also create an emotional atmosphere reminiscent of the SCP Foundation and nosleep fictional horror stories involving the exploration of the internet.


Presumably there should never be a queue of more than one, right? Unless they have very limited server capacity...


That's right.


My curiosity got the better of me. Now I must chuck my Mac into an active volcano just to be safe.


hahahaha. Mine too! I'm really glad it doesn't just throw you into a conversation. That "click anywhere to start" is critical.


This is the way.


This is the way.


Lol came here to just say that. The microphone auth prompt results in stress going waaay up.


"We've been trying to track you down regarding your cars extended warranty..."


What about typing instead of voice?


Seems incomplete. Maybe let's add multi-user functionality, and upvotes, and... hey wait a minute.


Actually, I would really want something like that to happen sometime. There was a really fun April Fool's experiment on Reddit a few years ago called Robin. Gathered bunch of people in small groups, active groups would then merge if people in there were active. Conversations there were much more spontaneous then on typical IRC/discord groups in know. I hope someone will manage to do something similar at scale, ideally on HN.


Why?


Do you have a minute to talk about our lord and saviour, VC Money?


I've not tried it because the site is down, but a requirement for paired users to have something in common - like being a hn reader - works really well for these things! Omegle's main chat is really spammy, but if you add "gardening" or whatever as a requested common topic, you're likely to get an actual conversation.


Try it again, it should work now.


no, still doesn't work for me though.


Fun. Profit. Boredom. Curiosity.

I know many people that go through Omegle when bored and meet new folks. Seems like the same concept.


Why not?


so people can say that got jobs through random connections.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: