Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
sa46
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
22 ms
·
211.
▲
by
sa46
5y ago
How does backwards compatibility work in FIDL? I'm familiar with protobufs which allow: - Renaming a field: Does FIDL rely on the traversal order for stable IDs? - Converting the type of any field backed by a varint to any other varint
212.
▲
by
sa46
5y ago
Very curious, what’s an alternative implementation strategy or more appropriate mental model? My mental model (I am not a database engineer) is that every SQL database is fundamentally backed by a key value store. For Postgres, each value i
213.
▲
by
sa46
5y ago
I’ve thought about creating HN Tropes, similar to TV Tropes to categorize the repetitive discussions with comments that are easily predicted. I haven’t convinced myself it’d help things, might just fuel the fire.
214.
▲
by
sa46
5y ago
SimpleCircle | Senior Engineer | San Francisco | Full-time | ONSITE SaaS ERP for craft breweries to scale up delivery and operations. Join us as an engineer at our seven-person, fully funded startup serving craft breweries. We’re looking fo
215.
▲
by
sa46
5y ago
Not sure about Preset specifically, but most SaaS vendors advertise their IP address so you can limit incoming database connections to the SaaS vendor’s IP address.
216.
▲
by
sa46
5y ago
Mission command [1] might be useful here. The main idea is you state the mission and your expanded intent and each subordinate command does the same thing all the way down the chain. There’s several “checksums” commonly employed in the US A
217.
▲
by
sa46
5y ago
I think it's okay not to get near 1:1 parity given the amount of unchecked type-casts (foo as unknown as X) and ts-ignores that happen anyway in most code bases. The other advantage is that the typechecker is advisory, meaning the code
218.
▲
by
sa46
5y ago
Though it's a rather deep rabbit hole to get Tufte-style side notes [1]. Crafting Interpreters does it quite nicely [2]. [1]: https://www.gwern.net/Sidenotes [2]: https://craftinginterpreters.com/statem
219.
▲
by
sa46
5y ago
Local history saves my bacon about once a month. It's incredibly helpful as it lets me adopt a fearless refactoring approach knowing that I can always get back.
220.
▲
by
sa46
5y ago
Nice catch, that was a neat rabbit hole [1]! I run an Ubuntu derivative so you're correct that /tmp is not mounted using tmpfs. Looks like Arch and Fedora use tmpfs and the Debian flavors do not. [1]: https://lwn.net&#x
221.
▲
by
sa46
5y ago
If we could wave a medium-sized magic wand to make the database fast for tests (as least as fast as the proposed alternative), would we still use a single shared database for all tests? I would use a separate database per test since I don&#
222.
▲
by
sa46
5y ago
In Postgres land, I think most businesses work around temporal tables with audit tables using triggers to dump jsonb or hstore. I wrote up how I used table-inheritance here [1]. I agree with your point. Postgres is starting to stick out com
223.
▲
by
sa46
5y ago
Just as developers are responsible for the codebase. Yet folks seem rather receptive to the concept of technical debt. It’s not much of stretch to imagine organizational debt caused by pesky human problems.
224.
▲
by
sa46
5y ago
What happens when prod is a few hundred terabytes or you use logical replication to stream changes to handle major version updates? The GP’s point was shipping 100% of a large database isn’t feasible. You’re conflating dev environments wit
225.
▲
by
sa46
5y ago
There’s a fun estimation technique from Programming Pearls: pi seconds is a nano century. So, 3.14e7 seconds in a year. 80 bytes/sec * 3.14e7 sec = 2.4e9 bytes http://wordaligned.org/articles/pi-seconds
226.
▲
by
sa46
5y ago
Databases aren't a great example. There's a rich landscape of non open-source databases that provide features not available in open-source DBs. Cockroach DB, Spanner, SingleStore, Vertica, Snowflake.
227.
▲
by
sa46
5y ago
You can use a combination of `comm` and `uniq` to implement set intersection and union. https://ss64.com/bash/comm.html > Return the unique lines in the file words.txt that don't exist in countries.txt co
228.
▲
by
sa46
5y ago
- Define a new file format, yaml-plus. - Create a parser for the new yaml-plus format across all supported languages. - Migrate all build processes to handle yaml-plus with the new parser. In a large-org, it's likely impossible to trac
229.
▲
by
sa46
5y ago
> Do you write out 120 "INSERT" statements, 120 "UPDATE" statements, 120 "DELETE" statements as raw strings Yes. For example: https://github.com/jschaf/pggen/blob/main/exa
230.
▲
by
sa46
5y ago
Having written a non-ORM Go-Postgres tool [1] similar to sqlc, I'm a big fan of this article, especially their acknowledgment that using SQL moves the eng culture towards data-centric engineering. Some thoughts: - Application code shou
231.
▲
by
sa46
5y ago
I haven’t seen any Postgres plugins that extend RLS but very interested. Any links?
232.
▲
by
sa46
5y ago
Can you clarify? You can vertically scale a database a few orders of magnitude. My view is that “some point” is a long way off for most OLTP workloads.
233.
▲
by
sa46
5y ago
I'm not familiar with state of the art for language servers but here's common IntelliJ refactors I use across Go and TypeScript (and Java a while ago): - Add a parameter to a method signature and fill it in with a default value. -
234.
▲
by
sa46
5y ago
Dynamic queries are difficult to model when starting from a static query since SQL doesn't compose well. The workarounds I've used: - Use multiple queries that share the same output type. - Push the predicate into the query direct
235.
▲
by
sa46
5y ago
Is the idea that if you build the framework you can build the ideal platform for the framework with a nice warm customer base and collect that sweet recurring revenue. Way more upside than selling licenses. Sounds like timescale, metabase,
236.
▲
by
sa46
5y ago
You might like pggen (I’m the author) which only supports Postgres and pgx. https://github.com/jschaf/pggen pggen occupies the same design space as sqlc but the implementations are quite different. Sqlc figures out the
237.
▲
by
sa46
5y ago
SimpleCircle | Senior Backend Engineer | San Francisco | Full-time Join us as an engineer at our five-person, fully funded startup. We’re looking for a senior engineer well-versed with the intricacies of building rich, data-backed applicati
238.
▲
by
sa46
5y ago
Good recommendation; I also got a lot of mileage out of: Managing Time in Relational Databases: How to Design, Update and Query Temporal Data How to Design, Update and Query Temporal Data > be careful if you tend to over-engineer or are
239.
▲
by
sa46
5y ago
If you're tempted to use audit tables, you might also consider making the jump to temporal tables. I rolled my own light-weight version using inheritance-based partitioning in Postgres. The basic idea is: - Create a parent table like i
240.
▲
by
sa46
5y ago
I use plpgsql for constraints but try to avoid any form of mutation mostly based on other folks horror stories.
More ›