Socket Supply Co.
Socket Supply Co. is how web developers use cloud computing services like AWS. Our lean, fast, local-first software helps developers be more productive, collaborate in real-time and deploy the web.
Why should I develop a P2P app instead of a hosted service?
Cloud gets more expensive, more complex, and less reliable with growth. While P2P gets less expensive, maintains the same complexity, and becomes more reliable.
Today, hardware is ubiquitous. Apps can connect directly to each other, and
round trips to the data center are less important. Traditional
Infrastructure As A Service still has it's place for super-computing, and as a
fallback, but it's costly, complex, opaque, and limits autonomy. P2P is the
natural next chapter of cloud computing.
Do people download software?
Yes. Consider the popularity of VSCode, JetBrains, Figma, Photoshop, and thousands of apps and games in the Apple/Play stores, etc. Also, consider the popularity of projects like Electron, Phonegap, etc.
Isn't the Web lower-friction for trying new things?
No. Consider the requirements for trying a service. First, enter a URL. Consent to cookies/etc. Sign up (opt-out or in to options, pick a username, provide your email, maybe enter your credit card). Enter your email URL. Sign into your email Navigate to the email and click the link or copy the code. Confirm (maybe enter your new credentials, maybe enter the code).
Much of this busy work is meant to guard against abuse of the service.
Isn't the web’s distribution/update model is the simplest?
No. Software can be just as easy to download and start as visitng a website. See the previous question. Also, almost every platform provides OTA (Over The Air updates, EVEN APPLE!) These are small incremental updates, and there are a lot of ways to do them.
Are your Developer Tools based on Electron or something?
No. They are built on our own framework, Socket.
Do your developer tools run on the command line?
Why are there three separate tools?
The Files, Serverless Studio and Data apps can be used together or as standalone apps. This keeps each app simple and focused on a single concept. You only need to install the tools relevant to the project you're working on.
How do you simplify cloud platforms? Won't their underlying complexity always leak through?
We simplify cloud platforms by focusing on web developers and the workflows they need to deploy files, functions, and data. We don't attempt to wrap every part of the underlying cloud platform or cater to every possible use-case. For projects with specific infrastructure needs our tools provide an escape hatch — all projects retain full, direct access to their cloud platforms.
How can you keep up with constantly changing cloud platforms?
Cloud platforms are constantly adding new features. Operator Tools are focused on fundamental web developer goals — deploying files, data, and logic. The fact that they are used in concert with your cloud provider, there is an easy escape hatch to getting access to features that you need if we don't provide them.
Do you cause projects to be locked into your tools?
No. We're not a service that you must depend on nor does it enforce any particular structure on your project. Any project you create using our tools can run without it. We help you work with your infrastructure rather than obscuring it from you. Furthermore, we want to help you migrate away from centralized cloud platforms to edge networks and distributed systems which suffer from even less lock-in.
What data is sent back to Socket Supply Co.?
None. For full disclosure, when your apps query for updates we know what OS you are using. None of your behavior, usage patterns or any other data is ever collected. Nothing is ever linked to your account or shared for marketing purposes. If software updates are disabled, no data is sent back at all. Our apps don't collect telemetry information! There are enough people watching you over your shoulder already.
Is Socket Supply Co. able to see any of my files, functions, or data?
No. Absolutely not. Operator tools communicate directly with the infrastructure that you're deploying to. Access keys for this infrastructure are kept on your own computer.
Do I have to create an account?
No account is needed if you are only using the standard versions of our apps. If you wish to use the pro versions, you must create account for billing and providing access to download the apps. Your account also lets you to run bootstrap nodes (aka. super peers). These nodes keep the collaboration features of the apps running even when no other team members are online.
How is Socket Supply Co. funded?
Venture capital and product sales. Our investors are Castle Island Ventures, Galaxy Digital, CoinFund, Peer VC, and 100 Acre Ventures.
What happens to Files, Serverless Studio, and Data if your company disappears?
Deployed files, functions, and data would continue to work as usual. You may continue to use Operator Tools indefinitely. In addition, we would release the source code for all our apps, including pro versions, under an open source license.
Can I use my existing deployment process with Operator Tools?
Yes, your existing deployment process will continue to work. We will not interfere with it in any way. Instead, we will give you extra visibility into your deployments no matter what process you use, and enable non-DevOps-experts in your team to contribute too. You are also free to use only some of the apps, or have only some of your team members use the apps, depending on what makes sense for your project.
How do access controls and permissions work for team members?
Operator Tools use the access controls provided by whatever infrastructure your project runs on. For example, if your project runs on Amazon Web Services (AWS), the access controls are provided by AWS Identity and Access Management (IAM). We offer features to make managing these permissions easier. For example, if a team member is denied permission for something, they can request permission directly from the tool they are using.
How are you able to offer features that aren't supported by the underlying cloud platform?
We use Hypercore, a distributed protocol, to offer features like permission requests, deployment history tracking, deployment undo/replay, and comments for team projects. Upon installing the apps, a hyperdrive is created locally on your computer which shares the information needed to power these features among your team members. These features don't rely on any external service, but can be supplemented by an always-online bootstrap node if desired.
Why migrate away from cloud platforms to edge or decentralized systems?
Edge networks and decentralized p2p networks offer a different set of tradeoffs compared to cloud platforms. Distributing a workload to end users enables a new class of applications that have specific advantages around latency, data sovereignty, cost-efficiency and connectedness. For existing applications, some of these make sense to run fully centralized, some make sense to run fully decentralized, and some make sense to run as a hybrid between the two. We help developers in all these cases by offering access to cloud, edge, and decentralized systems together in a consistent, accessible tool.
Is the Operator Framework essentially an Electron or PhoneGap?
Electron and PhoneGap enable building desktop and/or mobile applications using web technologies. Electron is for desktop apps. PhoneGap is for mobile apps. Operator Framework allows you to build both desktop and mobile apps with the same developer experience.
Unlike Electron and PhoneGap, Operator Framework is based on a component that ships with the Operating system, so it can be lightweight and minimalistic. It builds upon the lessons learned from Electron and PhoneGap, avoiding technical mistakes made by these two earlier frameworks. For example, Operator Framework does not build Node.js into Chromium, resulting in better sandboxing and security issues.
How is Operator Framework different from Tauri, Flutter, or React Native?
Operator Framework is for web developers. It doesn't require learning a new language. It also works across both desktop (macOS, Windows, Linux) and mobile (iOS, Android). Finally, it facilitates UDP, TCP and UDX, even on mobile so you can use things like hypercore, hyperswarm, libp2p, braid, etc.
How can Webview based apps compete with the quality of native apps?
Native apps require an enormous amount of developer effort if the developer wants their app to run across multiple platforms. Operator Framework lowers the barrier to entry and lets in the worlds largest developer community. With care, avoiding bloated frameworks, a web-based app can run as well as any native app.
Why should developers working on small-scale apps without massive data needs be interested in offloading cost of compute and hosting to its users?
Even if you're not using any P2P technologies in your app, Files, ServerlessStudio, and Data will help you test and deploy your app to AWS. Similarly, you can still use Operator Framework to develop for desktop and mobile even if your app uses a completely centralized client-server architecture.
How effective are distributed networks at hosting the long tail of rarely-accessed content?
In networks like BitTorrent, rarely-accessed content becomes unavailable as the few peers hosting that content drop offline.
We enable developers to build hybrid networks. In hybrid networks, developers can choose to keep a centralized copy of all content. This keeps rarely-accessed content always available. For popular content, a distributed swarm of users’ devices also assist in distribution, reducing the cost of serving that content from a central location.