7 ms·
Not commenting on tailscale, but for the state of databases. Sometimes boring is the right choice. PostgreSQL has worked for decades now, and seems to have reg
by alophawen 5y ago
Not commenting on tailscale, but for the state of databases.
Sometimes boring is the right choice.
PostgreSQL has worked for decades now, and seems to have regained much of the performance that MySQL once boasted.
If you do this for the money, investing in tried and true (but boring) software should be the default solution.
I watched with dread how the MongoDB fiasco played out a decade ago. Meanwhile, I kept using PostgreSQL and had a good ride.
- kfk 5y agoIt depends. I was in a demo call from Blaze, a CDP (Customer Data Platform), Segment.io competitor. Their underlying db seems to be MongoDB and for a CDP makes a lot of sense. In a CDP you collect all kind of data on n hard ids that identify 1 person interacting with your web assets, schemaless and json first is a lot easier to reason in this context than SQL. This is because you keep enriching your profile with additional attributes over time. Can PostgreSQL do this? Absolutely, but it’s not its main feature. Things are complex, especially in data, I think it’s important to evaluate use cases rather than going with generic assumptions like “use boring tech”.
- louwrentius 5y agoYou say 'sometimes', I think it should be the default position. When you want to deviate from the boring software and technology, there must be a very sound 'business case' for it. If you are building a planetary scale business, OK, maybe that warrants something more fancy. But how many companies really need that? I'm not limiting myself to the HN unicorns, but looking at the whole market.
- alophawen 5y agoI agree with you and I also wrote: > If you do this for the money, investing in tried and true (but boring) software should be the default solution. Meaning if you are just playing around, then by all means evaluate new and shiny stuff.
- unfocussed_mike 5y agoYep. IMHO MySQL becoming boring (fast, pretty reliable, non-compliant quirks being ironed out, decent backup tool availability, credible admin tools, JSON and CTE support) is one of the most important long term trends on the internet. Along with the parallel evolution of PHP.
- klysm 5y agoI strongly dislike the combination of php and MySQL, from the (recent) experiences I’ve had with it. I don’t see a good reason to pick that as a greenfield stack, but I could be convinced otherwise.
- pphysch 5y agoFor me it's not necessarily the tech themselves, but the lack of any framework to guide development for the next guy. All the PHP+MySQL I've worked with has been horribly bespoke and brittle. Want to significantly change a URL? Need to refactor every path in the .PHP file, because it's importing something from ../.. Or get in the spaghetti business with path aliasing on the webserver. Want to refactor the database schema? Difficulty: Impossible, because raw SQL strings are scattered everywhere, including on other systems. Want to add/modify a new internal CRUD form? Gonna be several hours of work to RE what the last guy did to keep things consistent, while tiptoeing into the SQL to not break anything. With a proper framework, this is a 5 minute task and a few LOC into the "admin interface". It works, and you can do a lot with just a few php files and a basic Linux system, but there are downsides.
- unfocussed_mike 5y agoThere are several PHP frameworks worth using. Laravel is, IMO, among the best web frameworks available full stop. Certainly one of the most maturely documented. It addresses all the points you make.
- alophawen 5y agoI had a 10 year career doing PHP, in the last year or so I also enjoyed Laravel and built 10 or so sites with it. It did many things right. Eventually some blade template error resulted in an impossible stack trace due to the insane amount of magic behind the scenes in Laravel, and while debugging that I decided to stop relying on such black magic hack of a framework. Around the same time Go gained in popularity and I have been working with Go since and are very happy with it. This was Laravel 5 days and I'm sure much has changed. I completely adored the laracasts made by Jeffrey Way. I wish every framework had a guy like that do produce learning materials.
- rsp1984 5y ago> I watched with dread how the MongoDB fiasco played out a decade ago. Could you elaborate on this? MongoDB as a company is worth $30B, so it looks like they did at least some things right.
- billywhizz 5y agothey did their marketing right.
- alophawen 5y agoThere was many new node projects using MongoDB and I remember several failed, but details elude me. There was a Slack competitor using MongoDB that was snappy and js hipster trendy that ultimately failed because of unreliable database IIRC.
- UncleEntity 5y agoHow many crypto currency projects went down with $million+ losses due to using mongoDB as the backend?
- vinay_ys 5y agoTheir paid managed service works well for enterprise SaaS companies who need < 3-4 TB of storage max ever per customer cluster and have enterprise scale users (<100k users). It also works well for early stage Consumer Internet startups that haven't yet achieved huge growth but care a lot about developer productivity while churning features at high velocity. But it gets blamed for reliability issues suffered by highly successful Consumer Internet companies that have achieved scale and have DAU, MAU in > 10M and have lot more than 4TB of data in a single cluster. But that's basically a good problem to have at that stage. Usually such a company would have many more problems – monolithic application with monolithic database with huge unmanageable schema and indexes gone wild etc. Usual solution at that stage would be some sort of rearchitecture towards Microservices with multiple specialized databases for different use-cases – usually cloud hosted managed databases with horizontal scalability dedicated for online user-path workloads and separate OLAP tech stack for offline ETL/analytics workloads.