underrun | 9 months ago | on: Google Logo Ligature Bug
underrun's comments
underrun | 2 years ago | on: The Distributed Machine
underrun | 2 years ago | on: Apple Vision Pro: Why Monitor Replacement Is Ridiculous
...no seriously. i may have a problem...
underrun | 2 years ago | on: Time-Travel Debugging Production Code
this is pretty epic. but it also means you need to keep track of what version of your code ran every past workflow because you need to run it the exact same way when you replay it, right? Is there an easy way to track in workflow metadata or something which version of a worker (commit sha or something) ran a workflow?
also i love the beginning section about history. It would be awesome if every article I read about some new technology started with a reference to how whatever-it-is really grew out of PARC or bell labs or some research paper written pre-1980.
underrun | 2 years ago | on: Barefoot vs. common footwear: A systematic review
underrun | 4 years ago | on: Optimize for Simplicity First
https://zguide.zeromq.org/docs/chapter6/#Designing-for-Innov...
underrun | 6 years ago | on: Keeping master green at scale
Or do you mean that multirepo could also benefit from the construct of probabilistic speculation by ordering commits across multiple repos such that you are maximizing the number of repos that have changed before you build and minimising the number of commits applied to single repos?
Or both :-)
underrun | 6 years ago | on: Keeping master green at scale
Currently, I'm not convinced that you need to track and apply commits across dependencies and dependent systems atomically/transactionally to have a sane build environment even at scale, but you definitely get that part free with monorepo.
Any links to docs or presentations that address that specific issue would be very welcome :-)
underrun | 6 years ago | on: Keeping master green at scale
You are totally correct that to achieve the same performance, correctness, and overall master level "green"ness in a multirepo system you would have to either define or detect dependencies and dependent repos, build the entire affected chain, and test the result. That part is much easier in monorepo.
What I was referring to with "this" is that Uber's method of detecting potential conflicts. In multirepo land it would be a "conflict" if two people commit to the same repo. In multirepo, therefore, detecting potential conflict is trivial.
If Bob commits to repo A and Sally commits to repo B, their commits can't result in a merge conflict. Well, unless the repos are circularly dependent - which would be bad :-) don't do that. Of course, monorepo makes that situation impossible so there's an advantage for monorepo.
It seems like whether you have mono- or multi- the problems solved by one choice will leave other problems the build system has to solve that it wouldn't have to solve if the other option were chosen.
Different work would be required in multirepo but it would be work to solve the problems that monorepo solves just by virtue of it being a monorepo.
underrun | 6 years ago | on: Keeping master green at scale
https://blog.acolyer.org/2019/04/18/keeping-master-green-at-...
His analysis indicates that what uber does as part of its build pipeline is to break up the monorepo into "targets" and for each target create something like a merkle tree (which is basically what git uses to represent commits) and use that information to detect potential conflicts (for multiple commits that would change the same target).
what it sounds like to me is that they end up simulating multirepo to enable tests to run on a batch of most likely independent commits in their build system. For multirepo users this is explicit in that this comes for free :-)
which is super interesting to me as it seems to indicate that an optimizing CI/CD systems requires dealing with all the same issues whether it's mono- or multi- repo, and problems solved by your layout result in a different set of problems that need to be resolved in your build system.
underrun | 9 years ago | on: To Slow Global Warming, We Need Nuclear Power (Op-Ed)
And keep doing that.
I've also seen nice use of ligature for markdown formatting.
the idea that ligatures shouldn't be used with monospace fonts would also break monospace in multiple languages as some languages require ligatures to display single characters correctly.