Live data from Hacker News

Show HN: I built a fun video meeting app with 2D physics and proximity chat

flat.social

31–40 of 68 posts

Re: Show HN: I built a fun video meeting app with 2D physics and proximity chat

#33

Earlier quoted context omitted.

Hey! Please mind that the demo room is an open space to show off the features. Once you create your own flat, you are able to edit moderators, guest list, allowed email domains, banned list and keep the flat open and closed whenever you want. There is also ability to kick & ban. > I've seen others implement things like personal boundaries, hiding from others, and avoiding being boxed in by others. I find this very in…

Or, presumably, people could box you in by anchoring themselves around you? Similarly, I give it 5 mins before magnetising to others makes people uncomfortable, or is used for downright harassment. Ask any woman what it's like to go to a tech conference, and then try to guess if they would be comfortable using a tool like yours as it currently stands.

> Ask any woman what it's like to go to a tech conference, and then try to guess if they would be comfortable using a tool like yours as it currently stands.

Why did you ignore their reply to you entirely?

> Please mind that the demo room is an open space to show off the features. Once you create your own flat, you are able to edit moderators, guest list, allowed email domains, banned list and keep the flat open and closed whenever you want. There is also ability to kick & ban.

What would you do in a Zoom call with co-workers, friends, or attendees of a presentation who were disruptive? You'd kick them or leave.

Re: Show HN: I built a fun video meeting app with 2D physics and proximity chat

#34

Strange. I wanted to show app formerly called Caala to which I contributed but it disappeared from github. I wonder if this is because it became this. Also - which JS library do you use to voice chat and video calls? I wanted to implement voice chat myself. EDIT: it was just archived - https://github.com/capnmidnight/Calla

Hi there, I am capnmidnight on GitHub.

Calla was originally built to be an integration with Jitsi Meet. You'd setup a standard Jitsi Meet server and then write an app that connected to it as a wholly separate interface from Jitsi's standard interface.

Unfortunately, there were some major issues with this approach.

1) I used it for work, but last August changes in WebRTC broke Jitsi for a while and I had to scramble to stand up my own WebRTC TURN server to continue our operations.

2) Jitsi's lib-jitsi-meet was not very well documented (While there were docs on each function call, there wasn't much on flows for putting it all together, especially when it came to sequence of events involving joining rooms, listing users already in the room, etc.), and there were no official TypeScript .d.ts files for the project, so it made it hard to keep up with changes.

3) Performance was never that great. While Jitsi supported data channels, for some reason they were completely unreliable for anything more than 4 messages a second. I wasn't able to figure out why.

I had always intended Calla to be an audio and networking management library. It just got to be too much work to maintain Calla, especially considering most people didn't actually want Calla as a library but instead wanted more of a full app repo they could clone and minimally modify to make their own old-school-RPG-like meeting rooms. I only made the 2D RPG app to be an expedient demo, but I am personally more focused on VR apps (and actually one in particular at work).

Re: Show HN: I built a fun video meeting app with 2D physics and proximity chat

#36

Earlier quoted context omitted.

Probably best to outline a specific threat model. What is the danger, which the tools you mentioned would make safer?

I could outline one for me, that I'd look for, but I was asking more about what the authors of the tool had thought about and catered for. The dangers are all too real with online social spaces; douchebaggery, perving and harassment. The examples I gave are common mitigations (e.g. movement algos that prevent someone being boxed in to a corner can provide a way for somone to escape an uncomfortable interaction - with…

Just close the tab…

This looks like it was built for team social events. If you’re getting harassed and bullied on your team, you have bigger problems you need to take care of.

Re: Show HN: I built a fun video meeting app with 2D physics and proximity chat

#37
Hey amazing work. I attempted a 3D version of this in 2020 using playcanvas and Agora.io but ran into the realization that navigating a 3D world is not intuitive for non-gamers. Also, 2D is great because it lets you author new content 10x faster and be more performant than 3D. Really love how you implemented a physics engine to make it all that much more playful. Curious to know what your pipeline is to create the environments?

I agree with some other comments on here about trying to offload more processing on the client but for now I think you have a viable product to first find your market and then you can work to optimize later. No idea if its technically possible but I wonder if you could create a slack plugin to make it as few clicks as possible for remote teams to spin one of these up? Ideally you could render it in the slack channel but that's probably not feasible (unless you're able to pitch Slack/Discord on it?). Great work, good luck!

Re: Show HN: I built a fun video meeting app with 2D physics and proximity chat

#38
post #33

Earlier quoted context omitted.

Or, presumably, people could box you in by anchoring themselves around you? Similarly, I give it 5 mins before magnetising to others makes people uncomfortable, or is used for downright harassment. Ask any woman what it's like to go to a tech conference, and then try to guess if they would be comfortable using a tool like yours as it currently stands.

> Ask any woman what it's like to go to a tech conference, and then try to guess if they would be comfortable using a tool like yours as it currently stands. Why did you ignore their reply to you entirely? > Please mind that the demo room is an open space to show off the features. Once you create your own flat, you are able to edit moderators, guest list, allowed email domains, banned list and keep the flat open and…

I didn't ignore their reply. I responded to their expansion on the physical options for moving in the space.

The same argument for booting disruptive people could be made for conferences, too. Yes, it's much easier with smaller and more closely-knit teams, but it still happens. And your suggestion is _only_ any good for closely-knit teams. Once it starts getting used for more open-attendance events, that starts to fall apart.

We don't have to theorise about this stuff from first principles, we can see exactly this behaviour panning out for real in existing social systems today. Kick or leave as the two options doesn't cut it there, so why should it be sufficient here?

Re: Show HN: I built a fun video meeting app with 2D physics and proximity chat

#39
post #36

Earlier quoted context omitted.

I could outline one for me, that I'd look for, but I was asking more about what the authors of the tool had thought about and catered for. The dangers are all too real with online social spaces; douchebaggery, perving and harassment. The examples I gave are common mitigations (e.g. movement algos that prevent someone being boxed in to a corner can provide a way for somone to escape an uncomfortable interaction - with…

Just close the tab… This looks like it was built for team social events. If you’re getting harassed and bullied on your team, you have bigger problems you need to take care of.

Which could be fine, as long as the tool is only ever used for social events within existing teams with an out-of-band channel for dealing with harassment or bullying. But we all know that this won't be the case.

So let's not pretend these problems can't exist, or can just be hand-waved away with "well you can just leave". That's not how real social interactions work, especially those with employee/employer externalities attached.

Re: Show HN: I built a fun video meeting app with 2D physics and proximity chat

#40

Strange. I wanted to show app formerly called Caala to which I contributed but it disappeared from github. I wonder if this is because it became this. Also - which JS library do you use to voice chat and video calls? I wanted to implement voice chat myself. EDIT: it was just archived - https://github.com/capnmidnight/Calla

Ah yes, flat.social has nothing to do with Calla but thanks for mentioning it, I'll have a look! As per the JS library for audio/video - I have used Mediasoup.

As the creator of Calla, I would say that there is not much to be learned from Calla specifically.

The WebRTC portion was all implemented through Jitsi Meet, and I eventually grew to regret that direction. My current work uses just a CoTURN instance with a fully custom backend for managing multiplayer.

The user interface was only ever intended to be a demo, I didn't have any interest in running it as a FOSS project in its own right, and it while I would say it was certainly a competent implementation, it also wasn't anything ground-breaking in any way.

That basically leaves just the core audio graph management as anything that was valuable in the project. That part still lives on in my project at work, but considering I basically gave up on trying to run FOSS projects after some deep introspection on my experiences with running FOSS projects, I don't put much effort into documenting my code anymore. But if you want to see the audio graph management stuff, the latest version is here: https://github.com/capnmidnight/Juniper/tree/master/src/Juni....

The WebRTC system that I now use is largely this on the client (https://github.com/capnmidnight/Juniper/blob/master/src/Juni...) plus this on the server (https://github.com/capnmidnight/Juniper/tree/master/src/Juni..., which is a SignalR hub in an ASP.NET Core app, but should make the signaling flow clear). And then this code uses the client (https://github.com/capnmidnight/Juniper/blob/master/src/Juni...)

Post reply on HN