I hope you'll reconsider as your team grows. Developers look at their own app and think the extra resource usage isn't too bad, but the more this happens, the more Electron apps I end up running at once. Because Pop includes presence, it's something that, if it were more lightweight, I'd keep running all the time. As it is, if someone wants to call me, they have to first contact me on another platform to ask me to load Pop.
Also worth noting is that there's a setting to "reduce power when idle", which throttles screen scraping frame rate when relative CPU utilization is high. Additionally, you can disable "Use full resolution" to turn off Retina support, which should further improve performance for you. We'll work on surfacing these settings better, since it's not obvious that they're buried inside the settings page.
Also, do you keep Slack / Microsoft Teams / Dropbox / 1Password / VSCode always running, and do you have the same concern with those apps or is it something unique to Pop?
Performance is definitely a priority for us, so understanding where you're feeling the bloat would be really helpful to us.
But memory is a different story. I don't always get to work with machines with "enough" memory, so I don't keep any apps with a larger memory footprint (let's say anything above 50MB) running longer than necessary. More often than not I will try to just use the web app, which will at least not load "yet another copy of Chrome". Where feasible I will also simply switch to an alternative.
Not to backseat engineer too much, but maybe you could look into a smaller native component that can run in the background to listen for incoming "calls" and only loads up Electron (or maybe a native webview) when the user wants to actively use the app.
All of that said, it looks like you have a solid product and I wish you success with it.
EDIT: It appears that a year ago when your product was still named screen, I also provided some feedback which you acted upon swiftly, so I'm optimistic you'll figure this out as well :-)
To add to that screen sharing and video calling is already resource intensive, so whilst the argument could be made - what's another 500mb of ram, I'd expect the client to be as optimised and light weight as possible, because a system under strain is no longer "blazing fast".
Memory usage. I haven't noticed an issue with CPU usage, because I usually only open it briefly and tend not to be doing anything else intensive during that time. If I kept it open for video chat while I was working, maybe it would be an issue, but I currently use Messenger (in the browser, not the app) or Discord.
> Slack / Microsoft Teams / Dropbox / 1Password / VSCode
Slack was definitely a big problem for memory usage, so I don't use that much anymore. VSCode I only open while I'm editing. I wish it worked better over an X connection for that. Dropbox I allow to keep running on my main Mac (although its memory usage is ridiculous for what it does), but only load it as needed on my Mac mini. I use Teams, but that's on a work laptop that only runs Teams and Outlook.
Discord is the only Electron app that I keep open nearly all the time.
Regardless, you kind of hit on the point - Slack & VSCode are basically non-optional, maybe for other people it's some other combo. Pop, on the other hand, only has potential to be "non-optional" for collaborative work. Thus, given that real-time collaboration is not the standard way of working, being a resource hog on the level of "non-optional" apps means you will be shut off first for most users.
Where I get a bit frustrated is when companies stay on Electron. Slack knows—or should know—what type of product it is at this point, and so the developers shouldn't be pushing transformative software updates with any kind of frequency. So, step back and take the time to build native versions for each platform. Users will appreciate that their computers are suddenly faster!
Having said this, I think this discussion between Electron vs. Native is a false dichotomy. Performance and developer efficiency are both clearly important, and we don't have to maximize one dimension alone. I am confident we'll find a way to make Electron far more performant by switching off unnecessary features, such that it provides us just the surface area we need to be able to build great products that are indistinguishable from their native counterparts: except that they're quicker to build, easier to debug, are of higher quality (with fewer bugs), and cost less.
I know this sounds optimistic, but given the popularity of Electron, coupled with the issue of performance, this is an issue that is certainly going to improve over the coming months and years. Who knows, since ours is one of the more performance-hungry products, we may end up finding a solution that others can leverage as well.
OP: Until you are in the position where your software is forced on people by the pointy-haired managers (like Slack or Jira for example) you’ll need a better performing app or people will give up.
Coders especially; we don’t like waiting and emptying our L1 cache to context switch to troubleshooting a comms tool.
A serious issue I've had lately is Teams consuming 90%+ of my total Internet usage. The fact that it is consuming massively more bandwidth even than Netflix doesn't seem at all justified. My ISP is throttling me now and again and preventing me from being able to work at all. I understand it isn't the place of your company to fix the problem of crappy residential network infrastructure in the United States, but if you want broad adoption from people working from home in the United States, you really have no choice but to accommodate this.
Note that the only reason I'm using Teams is because I'm required to while working on government contracts because it's the only service right now certified to transmit controlled unclassified information.
We actually have a developer console command you can type to achieve this today if you really need something ASAP:
- In the desktop app, click the hamburger menu, and then click the Pop logo 8x to launch Dev Tools
- In the console, type setBandwidth(1000) to set the max and min bandwidth to 1000kbps. You can type resetBandwidth() to undo the change.
If this doesn't work for you, please email us at hello@pop.com to let us know.
Show HN: Pop.com – Video Calls, in 3D - https://news.ycombinator.com/item?id=25497737 - Dec 2020 (136 comments)
Show HN: Screen – screen sharing for remote work, by the cofounder of Screenhero - https://news.ycombinator.com/item?id=22676040 - March 2020 (203 comments)
While I was still at Slack, there were retrospective conversations around how Screenhero maybe should have been built on the Slack platform, instead of as a first-party app. However, the acquisition happened so early in the life of Slack that the platform didn't really exist yet, so it's unclear how we'd do better if we had to do it all over.
With Pop, we're doing things the right way. Pop is a standalone app, with a solid Slack integration. It makes it really fast to jump between the two (in fact, it's faster to jump into a Pop meeting via Slack, than it is to join a Slack Call!).
Its actually easier to use other apps than Slack's own apps. For example, you can't schedule a recurring slack call that calls all the participants. I would LOVE this feature, if there is a way to add it into slack.
I know, things are always more complex and your comment is no doubt a summarized version of what happened. It just read funny to me.
Very glad to hear you’re back in the game!
https://www.brightball.com/articles/screenhero-this-is-your-...
Good luck and I'll be keeping an eye on it!
Good to hear you're also feeling it.
Pop used to have a roadmap (https://www.figma.com/proto/bMYNNI6cy4DL1r0dgOFzjI/Screen?no...) more visible about the longer term vision which I really liked, it was about creating a constant layer on the desktop where you can just press a hotkey, up comes a list of Pop contacts, and you can basically knock on their door, they get a quick ping and you can be joined together in a second. This is the vision that I am really into and there is an issue to track the progress here > https://screen.canny.io/feature-requests/p/global-shortcut-t....
This means no more posting video share links in Slack and the friction to actual pair with someone becomes a couple seconds versus a minute+. Really looking forward to this!!!
Good to hear that most of the infra is built out to support this feature!
After starting with screen.so, we realized firsthand the importance of having a name that's easy to remember and communicate.
Also, instead of viewing the domain as an expense, it's more of an enduring asset, which potentially increases its value over time.
Going through all the trouble to rebuild the product I doubt they’ll do an acquihire again.
For instance, if you're building a webapp, and need to look at the product alongside the code, screen sharing (especially with the ability to draw) is a lot more valuable than being able to type in the IDE.
Back when we made Screenhero, we had the option to share a specific app, and what our users told us was that they'd often start by sharing the IDE, but then realize they wanted a lot more, and so would have to stop and share the entire screen. We eventually dropped the 'window share' feature for this reason.
My favorite part about Tuple is how it HAS NOTHING that overlays the screen. It just hides in the tray.
I HATE when these screen sharing apps all try to put floating windows and menus and chrome around the screen edges. Just let me share my screen without getting in the way, dang it! Why is that so much to ask?
With Pop, you can minimize the control panel with 1 click. We'll soon also be adding the ability to remove the border around your shared screen entirely (some users have told us it gives them anxiety to not see something that clearly shows them that they're sharing their screen, but we've now heard the opposite perspective from enough people to realize we need to support both preferences).
One of our favorite features is the drawing capabilities. It's weird to believe that this is the only tool we've used that has perfected drawing - something that has truly helped us collaborate without having to use a virtual whiteboard application.
Not sure how this fits, but often we don't get services like this these days because of the pricing model. We like a lot of these kinds of things, and we subscribed to a bunch (many cancelled now), but they all added up and didn't really charge us based on our usage. Perhaps we aren't the target audience as you want people who integrate this into their regular work so people use it all the time. But for us, we'd want all employees to be able to use this, but if we don't use it, we pay nothing. When we do use it, we really want max concurrent users to be charged (concurrent being not necessarily exact time, but within a day or so ). i.e., if 1 user uses it for 10-15 minutes for the entire month, we want to be charged something representing that usage. Then we'd be much more likely to signup and have this kind of thing available if and when we need it. Or any other model that seems fair for occasional / spikey use, psychologically, we just don't want to feel like we are paying for something we aren't using when we don't use it.
Discord: we haven't looked into their API yet, but it's an oversight on our part. We'll take a look soon!
Pricing: thanks for the detailed explanation of where you're coming from. Your perspective resonates well with ours, which is that we'd like the amount our customers pay us to be roughly commensurate with the value we provide them.
If you're truly interested in using Pop and providing feedback, I'd love to learn more about your team and your background so we can make sure we're aware of that perspective as we work on our pricing plan. Feel free to find a time via https://calendly.com/j-pop/30min or drop me a line at j@pop.com. Thanks!
> Please use a supported browser Chrome, Safari, Firefox or download Pop for Linux.
I'm using Firefox 91 on Ubuntu 20.04. Is this a browser version check failing or a some missing capability? Maybe one of the extensions in my browser is blocking something needed by Pop.
It seems to work on Vivaldi. At least it gets to the account registration page. I hoped it would work without an account so I didn't go any further.
> Yes, the domain was expensive. Roughly $1.5m. We consider it an asset that is unlikely to depreciate significantly.
Congrats on getting it! Hopefully it wasn't too much of distraction.
I worked with https://news.ycombinator.com/user?id=ted0 who was AMAZING at helping find and acquire the domain. I can strongly recommend him as an amazing person to work with. It took a few days to find a domain we loved, and another few days to close the transaction. It was quite an interesting experience!
It works well, too. There’ve been random hiccups, but nothing too disturbing. Most of the time it just gets out of the way.
Thanks for the great tool!
Good luck, team Pop!
Steps: 1. Share screen 2. Change cameras videos to the big option (Out of the 3 options available) 3. Click on draw
Result: You are not able to click elsewhere on the screen, you just keep drawing.
Great tool though :D
One weird thing: Every key typed was doubled. So I'd type one "m" and on the remote screen would get "mm" in the input field.
I'm on Linux (Arch) and the other end was Windows 10.
Other than that, it was VERY smooth and my colleague was quite impressed. He is planning to use to for parental tech support!
So you've changed it to "pop"? I don't think you're going to get any better here..
Btw I'm an old fan of screenhero.
And honestly, the feedback on Pop as a name has been overwhelmingly positive :)
Anyway, OG Screenhero user here wishing you good luck with Pop! If Electron is too slow and you need a systems programmer, let me know. :)
Your repertoire of skills is crazy impressive — it's really inspiring and amazing to see all the stuff you've built and work you've done. Your manifesto is also exactly the kind of thing the world needs more of. We're not currently hiring but I would love to chat with you to exchange notes and war stories if you're up for it! Feel free to grab a slot via https://calendly.com/j-pop/30min :)
Do you expect to be able to make 3+ multiparty calls end-to-end encrypted, eventually?
Daily is a great infrastructure provider, and moreover, the team was incredible to work with.
The reason we switched out from Daily was because we were running into bugs in the product, and weren't able to tell whether they were on our end or Daily's end. By owning our own infrastructure, this became a non-issue: every bug was ours to find and fix. It turns out most of the issues we had were bugs in our custom modifications to Electron to reduce screen share latency, but we had no way of knowing at the time. Now that we've invested in our own infrastructure, it's the path of least resistance to continue using it, but we're open to revisiting this decision in the future.
The Daily team is stellar to work with, and I strongly recommend them to anyone looking for a WebRTC infrastructure provider.
What is the added benefit of this? The on screen annotations?
In short: when you need to see anything outside the IDE (e.g. a debugger, or even just seeing the running app alongside the IDE), a tool like Pop is very helpful. But you can also use it in conjunction with those IDE features, as Elijah in the above thread said he does.
For example, inviting someone to a screen sharing session is as easy as sending them a link.
It also has virtual whiteboarding, which Tuple doesn't have
Pop is the spiritual successor to Screenhero and strives toward the same goal: making remote work better than working together in the same room. After Slack acquired and subsequently killed Screenhero and after becoming remote workers ourselves, we found that none of the Screenhero copycats were really solving the problem adequately. Some are unstable, some are slow, some have poor UX. We decided to get back into the space and build a product that we like to use, leveraging some of the good ideas we came up with working on Screenhero and Slack.
With Pop, instead of just talking with your coworkers about concepts with words, the shared screen becomes a shared whiteboard for diagrams and flow charts. Instead of barking out line numbers or function names, it’s faster to highlight the line with a mouse. And instead of telling someone what to type, it’s easier to just show them by typing directly in their text editor. You can start a call directly in the app or with the Slack integration “/pop” command and collaborate with coworkers on macOS, Windows, and Linux. Or, if you don’t want to bother someone to download the app, they can join a session via web browser (mobile browsers supported, too!), even without a Pop account.
For now, it’s completely free to use. We plan to always maintain a free version, though for heavier team and enterprise use, we’re looking to start charging soon (servers are very much not free). Once we have revenue, we plan to turn some of our attention to adding more remote office features, like spatial audio and presence, and, more broadly, addressing issues of isolation and loneliness in remote work.
We’ve bootstrapped the company entirely ourselves and are unbeholden to outside investors. Our goal is to build a product that people enjoy using. We’re not looking for an exit; we’ve been through that and know what it’s like (financially great, but emotionally taxing). We want to create an independent and sustainable company where we are happy to work for our entire careers.
Let’s get these out of the way:
1. Yes, we’re building on Electron. Yes, we are aware of the performance tradeoffs, but have decided this is the best choice for us. We’re shipping Windows, Mac and Linux clients along with browsers with a four-person team — it’s the only good way right now to do that without features taking six months. We’ve modified the screen sharing pipeline in Chromium to reduce latency as much as possible, because with interactive screen sharing, milliseconds matter.
2. Yes, the domain was expensive. Roughly $1.5m. We consider it an asset that is unlikely to depreciate significantly. (The domain actually has an interesting history as a failed precursor to Netflix from Ron Howard and Steven Spielberg https://www.theguardian.com/technology/2000/sep/10/internet....)
3. No, our non-compete no longer applies — it expired two years after Slack’s ScreenHero acquisition.
4. Yes, we were originally called Screen.so. It was not a good name (and HN let us know, thanks!) and we are now very happy with Pop.
We’d love you to try Pop and let us know what you think, even and especially if it doesn’t work well for you. The app has gotten exponentially better because our dedicated users tell us about their issues and work with us to get them fixed. And, if you have ideas about how remote work could be more enjoyable, we’re eagerly listening!
The ease at which anyone can share any window and everyone can instantly interact with it is quite game changing for distributed teams IMO.
I've used both https://www.drovio.com/ (formerly Use-Together) and https://tuple.app/ during the pandemic successfully at work.
https://en.wikipedia.org/wiki/Second-system_effect
> The second-system effect or second-system syndrome is the tendency of small, elegant, and successful systems to be succeeded by over-engineered, bloated systems, due to inflated expectations and overconfidence.
How does Pop compare to Watercooler? [1]
Also, did you consider using Signalwire APIs [0] to power the service? (disclaimer: I know the team well and I am an early investor)