198 karma · joined May 2, 2014
But still it was an amazing experience whenever I played it. I felt the pressure and the need to start again like no other game nowadays.
But maybe that’s just because I was a kid.
Also check out Lamport vector clocks. It solves this problem if your producers are a small fixed number.
The post is both about tiny images AND how to build docker images with nix. I think it was an interesting tooling to make for our community. Some Nix people are already using it for obvious reasons.
Nix moves fast enough, in the sense we usually do a good job at not breaking things. Yet we have to necessarily introduce innovations in our frameworks.
1. Each go package has an attribute name in nix, like anything else, that is not tied to its url.
2. Each go package has an url where to fetch the source from, which is not the import path to use the package.
3. Each go package has a number of old import url aliases (e.g. "code.google.com/...")
4. Whenever a package X depends on Y with an old import url, then X is rewritten to use the new url path of Y using govers.
So the problem is solved at our packaging level.
This is not to say it's the best solution, but certainly a good alternative solution.
Is there any official statement that Persona will shut down?
In knex operators are written with .where() itself. Also it doesn't manage table aliases apparently. And it's quite tied to an underlying connection as I can see.
But yes, all the sql bulders out there are quite similar, but there are notable differences compared to sqlata if you look deeper.
1) If you install a bad grub, you cannot rollback it using nix. That means, not a wrong grub line, but if grub itself is broken.
2) Anything that is not under nix control, the data: like desktop configurations, databases, ecc.
But /usr/bin/env is in nixos to make it easy for people to run scripts. But packages never use /usr/bin/env, it's just there for convenience.
We don't need go get or any other tool, and we have about 174 packaged libraries in our repository.
If the program can implement a lock between the two actors, then your language is not deadlock free. Even a loop by checking if some variable has changed by the other actor (if possible in this language, I still don't even know by the deep lack of examples), and the other actor doing the same thing, that can be claimed as deadlock.
That's because PS2 says they get cheaters from H1Z1, and viceversa.
It works well when adding nodes, but then how does it work when removing a node in the middle? When allocating nodes in a ring it's easy, just reassign the vnodes. But what with this algorithm? Can anybody explain how does it keep track of which nodes take control of which part of the removed node?
It felt very organized and just worked, then I looked at Elm and said: "that's exactly what I thought I'd do with ghcjs". Then with react.js: "finally somebody implemented the concept in plain javascript". Which is after all a kind of stricter mvc model for the single-page web applications. The fact is that with an haskell-like language, the kind of mvc concept is much more structured, you do less design mistakes because the language itself constraints the effects. So what react.js did is adding these constraints on top of plain js in an elegant way.
In other words: I think the addition of elm is the language itself, for those acquainted with haskell and where type checking matters a lot, compared to plain js.
On the same path, there are other libs similar to react.js that are even faster because they have stricter requirements on how data is mutated.