Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
bvrmn
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
9 ms
·
121.
▲
by
bvrmn
2y ago
Yep, it's quite handy for complex reporting. An original motivation was to disentangle a 1.5k lines (SQL + corresponding python code to assemble the query) of almost identical clickhouse queries. There were two big almost similar data
122.
▲
by
bvrmn
2y ago
`take 50` of all `users` records in random order and after filter the result with username and id? I hope it's the right answer and prql authors are sane.
123.
▲
by
bvrmn
2y ago
It seems article shows the opposite argument. SQL builders are useful not to write fragile raw sql ridden with noisy filter patterns with repeated numbered placeholders which could be easily broken on refactoring. Also it's impossible
124.
▲
by
bvrmn
2y ago
It's mostly dead locked networking code. Hard to investigate, hard to search the culprit. And of course code bases without linter for err propagation and handling. And this-null for "methods".
125.
▲
by
bvrmn
2y ago
Also it depends from API response. It could vary from FE dictating schema or backend making hard orthogonal domain modeling API. In first case FE is productive there is no need to transform data but makes BE a hot mess. Otherwise FE have to
126.
▲
by
bvrmn
2y ago
Typescript has so vast productivity benefits there is no any second though to use or not to use it.
127.
▲
by
bvrmn
2y ago
You can't add arguments to vendor library functions. It's super convenient to have contexted logging work for any logging calls.
128.
▲
by
bvrmn
2y ago
> As a newcomer to Go, a lot of their design decisions made a lot of sense when I realized that a lot of the design is based around this idea of "make it impossible to do something that could be dumb in some contexts". You are
129.
▲
by
bvrmn
2y ago
> Nor does writing a basic, high level specification. That's the problem. Basic, high level specification gains nothing. > I’ve taught developers how to use tools like TLA+ and Alloy in week. You have week length courses. From my
130.
▲
by
bvrmn
2y ago
> I feel like there is a story behind it. :) Ahah. 100%. Honestly I am in a great conflict right now. My current role is in a platform team (first time here, previously it was only product positions). And I'm responsible for impleme
131.
▲
by
bvrmn
2y ago
Let me elaborate. The idea of "we have multiple product teams and they do similar stuff, let's optimize it" visits CTO/CEO brain on quite early stages. And "platform" team could evolve according to: 1) devops&#
132.
▲
by
bvrmn
2y ago
Platform teams could be highly toxic especially in small startups during initial secops/audit era. You really need like hundreds of product engineers to gain velocity/value from platform teams.
133.
▲
by
bvrmn
2y ago
> The only other thing you need to know is few hooks. And where you can't use them. Hopefully there are zillions of YT videos from experts teaching you all react gotchas.
134.
▲
by
bvrmn
2y ago
Also I could recommend https://github.com/slact/nchan . It has the same idea: hide and abstract pubsub complexity for a backend service. nchan is built on top of nginx and could be more convenient (existing nginx confi
135.
▲
by
bvrmn
2y ago
I bet you have classes with Service suffix.
136.
▲
by
bvrmn
2y ago
DDD is simply a common sense. Every sane project models domain in domain terms and has layers. There is no need in ceremonies around file structure and method names.
137.
▲
by
bvrmn
2y ago
"Make colleagues to review a PR".
138.
▲
by
bvrmn
2y ago
> I think they believe that the only separation is styling/not-styling, because behaviour is very tied to structure anyway. I "believe" even harder :) CSS could be used as a completely separate thing. But from practical st
139.
▲
by
bvrmn
2y ago
I agree naming is kinda awful. But you need geo timezone only for rare cases and handling it in a separate column is not that hard. Instant time is the right thing for almost all cases beginners want to use `datetime with timezone` for.
140.
▲
by
bvrmn
2y ago
> you are supposed to know what you are doing and types are completely unnecessary You are human, you simply can't. I've literally found bugs in MY existing code by a mere rewriting it to TypeScript. It's the same story
141.
▲
by
bvrmn
2y ago
> Also the duck typing crowd were rebelling against polymorphism and over-used meta-programming OOP slop, not against types per se. My argument against types in python was literally: it's hard to model my domain with static types. A
142.
▲
by
bvrmn
2y ago
What's "original timezone"? Most libraries implement timezone aware dates as an offset from UTC internally. What tzinfo uses oracle? Is it updated? Is it similar to tzinfo used in your service? It's highly complicated to
143.
▲
by
bvrmn
2y ago
Splitting code into multiple files and lowering cohesion is quite far from "separation of concerns". It makes changes, navigation and reasoning artificially harder. It's like tearing building blueprint into random pieces.
144.
▲
by
bvrmn
2y ago
It's hard to use lua for any sizeable chunk of code due to weak typing, absence of type hints and error handling. No it's not underrated in any way. It's funny how through the years I've started to appreciate statically
145.
▲
by
bvrmn
2y ago
Sadly article's author doesn't touch the main idea of the book: component's public API should be narrow as possible. John makes a great deal of that with concrete examples.
146.
▲
by
bvrmn
2y ago
IMHO: 1) JS frameworks to track state especially "new wave" like zustand and similar are wonderful to bring down complexity of redux based solutions. 2) No amount of reactivity would help web slack to keep in sync activity content
147.
▲
by
bvrmn
2y ago
It's easier to do nothing (already available status codes) then to do something, isn't it? Developers are awful at following consistent approach.
148.
▲
by
bvrmn
2y ago
Only 200 is detrimental for monitoring. You have to parse response body to classify response types. HTTP status codes is a cheap and already existing way to get insights into service behavior.
149.
▲
by
bvrmn
2y ago
It's an client error and it's highly beneficial to make it 400 for monitoring purposes. You want to see your FE or mobile devs deployed a faulty app.
150.
▲
by
bvrmn
2y ago
404 is quite an ominous thing. 404 because route is not found or entity not found. God bless your monitoring.
More ›