3,848 karma · joined October 2, 2013
eximius at lcspace.net
be60cfac56374a74e34d7f09f96cf841191a57c365112a49e3e376b309a51144
It's a very cool product but you have to let people know their messages aren't private.
We would be doing the same general loop, but fine tuning the model overnight.
I still think the current LLM architecture(s) is a very useful local maximum, but ultimately a dead end for AI.
I get by without it Go enums are an inferior representation of the same logical concepts. Sure, I can have (kind, value) and cast things for a hacky sum type for some kind enum. But Go lacks closed enums/exhaustive matching.
You can at least validate the match arms with things like type switches and marker interfaces, but they're still not exhaustive and they're terribly verbose.
And, again, I can get by without them! But I miss them because Rust-style enum representation comes up _so often_, even if you don't like the rest of Rust.
The error story is not ideal but less bad than that most of the time, as you can downcast to access extra error data. Still, harder than it needs to be.
Overall, I've grown to like using the language even despite its warts.
Would we not expect similar levels of progress in other industries given such massive investment?
This is the answer. The domain that exports the API should also provide a high fidelity test double that is a fake/in memory implementation (not a mock!) that all internal downstream consumers can use.
New method on the interface (or behavioral change to existing methods)? Update the fake in the same change (you have to, otherwise the fake won't meet the interface and uses won't compile!), and your build system can run all tests that use it.
> so for long running workflows you need to capture the state output anyways.
That would be a _very_ long running workflow. Probably worth breaking up into different subtasks or, I guess as Absurd does it, step checkpoints.
If you are an "end user" who just wants to run your damn code without caring about your dev environment, then `bazel run|build|test //thing/to/run:target` is about as good as you can get! _If bazel is already set up_, I don't have to worry about my environment! It just works.
If your environment has a lot of churn and there isn't a team who makes sure bazel is actually configured correctly, then, yea, it is massive overkill for a lot of things and if you try to do things how you normally would and not the bazel way, you'll have a bad time.
There are other benefits - sometimes you want public APIs so it _can_ be used, but you want visibility rules to limit _who_ can use it. It is great for it's cacheability and dependency tracking - if you need advanced build tooling, it has what you need!
But there is a very real chance you don't need any of these things and so the cost is not worth it.
(I, personally, hate dev environment churn, so just having the CLI tooling uniformity is enough for me.)
> If a change module A has a problem, you must roll back the entire monolith, preventing a good change in module B from reaching users.
eh. In these setups you really want to be fixing forward for the reason you describe - so you revert the commit for feature A or turn off the feature flag for it or something. You don't really want to be reverting deployments. If you have to, well, then it's probably worth the small cost of feature B being delayed. But there are good solutions to shipping multiple features at the same time without conflicting.
I'd rather we tackle the root problems leading to these. Increase education rather than reduce liberties.
I'm not, like, strongly opposed to reducing this particular liberty, but man it's not my first priority.
Currently at Opendoor which is executing an RTO strategy I am not interested in. I can operate in whatever mode is needed (scrappy, builder, "mature-er", leader, etc) and I'm interested in a variety of fields.
Location: USA
Remote: primarily
Willing to relocate: no
Technologies: Data Engineering (spark, python, SQL, etc), Backend applications (Modular Monoliths, Go/Java/Python/etc, gRPC/REST/etc, API design), Databases (primarily postgres, redis, spanner), Event/notification based systems/workflows, Frontends (React, Svelte, etc) - not comprehensive - if I haven't used it, it's because I haven't needed to not because I can't learn it
Resume: https://github.com/logannc/resume/blob/main/logan_collins_re...
Email: logan.neal.collins@gmail.com
What is the breakdown of transaction volumes?
I, uh, think your math might need some checking :)
Real object where practical, fakes otherwise, mocks only as required for exceptional circumstances.
Works great in interconnected monorepos where you can provide high fidelity fakes of your services for other integrating teams to use in their tests. Often our service fakes are literally just the real service wrapped with an injected fake DB/store.
I don't believe you're engaging in good faith either.