808 karma · joined August 25, 2017
ZB7NfzWsA6
Also, paid managed services on the backend are super common. I want a paid frontend component library. There are very few of these and I think there's room for an all star frontend team to sell professionally maintained, always improving components. Even on day 1 of my company I'd be willing to pay $100s a month for this
Not sure if this simplification crosses some threshold
I view it as spending the energy in finding creative ways to make money that over time reduce the need for labor. It still counts as working hard because it takes a lot of effort to not just follow a predefined path
You can rent all the space you want from AWS, you still need to create the plots. Creating them on AWS isn't very economical (which is why no one is doing that) and creating them at home means you have transfer terrabytes out to AWS which won't happen quickly or cheaply.
There's some conflation between plotting (which is one off and intensive) and farming (which is extremely low power and can be done by a rpi)
You might plot on fast NVMEs and transfer to slow HDDs (usually recycled). It's possible to burn out the NVMEs but you're only going to plot as much as you can store.
As with most things it's more complicated than it seems on the surface.
However an alternate perspective is the microservices were not micro enough to make it worth the overhead + cost. My opinion is the reason this none of this feels great is because a container is not small enough of a base unit to enable you to completely forget about infrastructure.
That's why I'm betting the next paradigm that gains traction is fully serverless architectures. The overall direction things have been going for decades is to make hardware more invisible and I think we finally get pretty close with serverless.
Areas where there is automation but prices continue to go up have issues with competition - banks are a great example because banking licenses are impossible to acquire.
Unless you meant I can limit "how global" my data is and that would improve write speeds?
AWS Aurora Serverless v2 is close to what I'm looking for but think it's held back by trying to make non-serverless technology serverless.
Fauna is close but I don't really need global consistency and don't want to pay the 150ms latency price for it: https://status.fauna.com/
I only really started noticing as I started to build more complex Typescript systems how much it helps. My teammate shipped a bug in Elixir yesterday that would have been caught by a static type checker
It directly addresses the cons mentioned in the article while retaining all the pros
I'm currently working on a product for companies in your space. I'm in the research phase - do you mind if I reach out to you for a quick chat?
Pretty impressive what you've put together! I'm sure it's really cool being able an editor to work exactly the way you want it to work.
I think poolers confuse the issue because they solve the problem of allowing multiple processes to share the same pool, they don't increase throughput to the server.
The 5000 connection example was probably missing some context. I actually was using 10mb per connection as the overhead which creates a decently expensive server for not a lot of throughput.
By pipelining what I mean is allowing multiple requests to be in flight on the connection, each tagged with an ID that gets queued on the server. When a worker process gets around to processing it, it'll send back a response with the same ID. This increases driver complexity but also makes it so you need very few connections per client.
I might be missing something but as I understand it, Postgres had chosen to couple the concept of a connection and a unit of concurrency for simplicity of implementation. However this means that even if your server can theoretically handle 5000 concurrent reads you will never get there because opening 5000 connections isn't practical. You'll likely hit a memory limit.
Why is this generally accepted as ok? Decoupling concurrency from connections seems possible via pipelining commands over a single connection. Is it just too late for a project as mature as Postgres?
The more time you spend thinking about the business and how what you're building will support it the better judgement you'll develop. You might not be able to articulate or argue it but you'll have an instinct on when an abstraction is going to be useful vs brittle.
Don't take the pushback in the other comments too seriously. There is definitely an audience (myself included) who'd want a focus, specific tool