Hacker Newsnew | past | comments | ask | show | jobs | submit | winrid's commentslogin

Their JSONB impl is not equivalent in terms of write isolation.

That's because sharding is way more likely to make them more money with their licensing model.

At FastComments we have Mongo deployed across three continents and four regions on dedicated servers with full disk encryption, across two major providers just incase. It was setup by one person. Replication lag is usually under 300ms.

Corvette?? Tahoe??

My manual Spark is pretty fun and beats Civic Sis and other fast cars in rallycross. I have done 100+ redline clutch dumps in that car. It still drives fine.


Does it have CarPlay?

I've never checked. I just use a phone mount...

Edit: no, but neither do the 9th gen civics, lol


Hard to say. A $800 desktop could easily equal the compute of $100k/mo in lambda costs.


That should be extremely low maintenance...


As long as we didn’t need to touch the machines, nearly zero. But you gotta touch them sometime.


They were likely the equivalent of $3k today. That's part of why these things don't last. Nobody wants to spend $3k on a fridge.


Their TVs and phones have terrible PWM and are bad for your eyes anyway.


Just showing a question causes CC to spin a cpu core at 100%.


It's probably just a side effect of them being powered on at the same time or not?


If they don't sync to a common clock source, they won't stay in sync for long. Probably not even for a few minutes or so.

You'd get the same phenomenon that you see when operating turn signals in traffic. They seem to weave "in and out" of sync. The frequency at which that happens is the beat frequency, i.e. the difference between the two blinking frequencies.


There's got to be some rubidium frequency standard that's a drop-in replacement for a 555 timer ;)


A chip scale atomic clock (with a handy 1Hz output) can be yours for barely over five thousand euros and half that if you buy 250 of them. https://www.microchip.com/en-us/product/csac-sa65

It's a bit larger than a 555, but it should keep you within a small handful of microseconds per day until the aging effects start to add up which make getting more than a millisecond a year dicey, even if the thing doesn't die on you: https://www.ipgp.fr/~crawford/2017_EuroOBS_workshop/Resource...


GNSS (GPS) is the typical standard used.


A cheapo 20ppm quartz watch crystal definitely doesn't drift by a second every few minutes, but it will over about about half a day at maximum error. A 5ppm one (still sub one Euro) will keep a second about every two days. A 0.5ppm TCXO can be had for about 15 Euros from Mouser and that gets you two weeks.

If you have shared line power you can just use that and everything will be locked in sync forever.

If you don't want to use that or radio, and you are outside, you could try to be really clever am sync your flash phases to a specific position of the sun. This is what the Long Now clock does. It'll be a different time each day, but it'll be the same for all units, within a small tolerance.


Well, yeah. I was sort of assuming that you won't use a TCXO or even just a cheapo quartz crystal, because it doesn't make a lot of sense: You've now thrown money at something that will relatively quickly desync anyway.

I mean, sure, the TCXO will mean that you only start seeing a phase difference between the two after weeks instead of minutes, but what's the point of that? I you want them to be at the same phase, you'll need to sync them at some point, and you do that by using a common clock source.

So either you shell out some effort for a real solution (power line is nice, and also qualifies as a common clock source as I've predicated), or you don't. And if you don't, there's no point in using a precise-ish clock at all, and you'll likely end up with very quick desyncing.


Well yes, obviously, but I'm just being a internet pedantic about "a few minutes".


And you are technically correct, which is the best kind of correct anyway.


Wouldn't the mains frequency be a common clock source, if nothing else?

But presumably these lights at least have battery backup, given the obvious risks in case all of them were to fail at the same time due to a grid issue.


Yeah, the mains frequency qualifies, if you explicitly use that.

(Doesn't solve the problem if you want them to be in sync phase-wise, i.e. blink at the same time or similar, but at least they won't drift apart, which was what this is about.)


You could still sync with that signal because it's not perfect.

For example, say you have a scheme where a period longer than the last one is symbol A, about the same period is B and shorter is C. You will get a random-ish sequence of symbols.

If you have an algorithm that, say, resets the timer to zero whenever a certain symbol sequence is detected, you can eventually get back in sync. With some care you can make sure you only sync when the sequence happens and the light has only been off for a short period to avoid excessively long off periods or truncated on periods.

Then you just need to have a local oscillator good enough to do that timing analysis and that can maintain sync between these symbol occurrences.

You could do it on the tiniest micro. Once you've counted the zero crossing detector, these days you might save 3 to 5 whole dollars over a GPS receiver on your very expensive ICAO compliant lamp and also ruled out using DC into the bargain! And theoretically it desyncs when the grid is too stable for days on end (and you just get BBBBB or ABABAB for millions of cycles)!

In terms of what is actually used, they do often use GPS and many of them have MODBUS or similar data connections which presumably wire into the wind turbine's telemetry somehow for fault detection.


Maybe you'll get a kick out of this, I did it in a bored afternoon a while back:

    echo -ne '\e[8;32;90;t';n=20;t=524292;l=$((t-1));m=$((2**n-1));c=0;xs=(1);ys=(1);for ((i=0;i<n*m;i++));do b=$((l&1));l=$(((l>>1)^(b*t)));c=$(((c<<1|b)&m));[ $((i%n)) -eq 0 ] &&{xs=($c $xs[1,4]);y=$((((xs[4]-xs[0])<<30-0x3fffd60f*ys[2]+0x7d32617c*ys[1])>>30));ys=($y $ys[1]);yd=$((120+(y >> 24)));printf '\e[48;5;%um ' $yd};done
It is entirely self-contained (but needs zsh, not bash, for dumb reasons). Terminal at 90 columns works best.

It is just a very simple integer LFSR as a random number source, followed by a hand-made integer IIR filter (manually placing poles on the z-plane). All of this entirely with trivial integer operations only (effectively using 32 bit fixed point arithmetic)

So without any external input or tools at all, and not even using zsh's $RANDOM, it makes an "analog" weavy pattern.

The LFSR is this part:

    b=$((l&1));l=$(((l>>1)^(b*t)));c=$(((c<<1|b)&m))
The hand-made filter is this part:

    xs=($c $xs[1,4]);y=$((((xs[4]-xs[0])<<30-0x3fffd60f*ys[2]+0x7d32617c*ys[1])>>30));ys=($y $ys[1])
I specifically tuned the filter peak just slightly away from being an integer divisor of 90 columns, to give the pattern a slight "rolling" effect.*


What... the... fuck. Mind blown.

The zsh dependency is super unfortunate, though :(


It is amazing! With some brutal hacks to some array indices, and probably some excessive quoting changes it can work in Bash too:

  echo -ne '\e[8;32;90;t'; n=20; t=524292; l=$((t-1)); m=$((2\*n-1)); c=0; xs=(1); ys=(1); for ((i=0; i<n*m; i++)); do b=$((l&1)); l=$(((l>>1)^(b*t))); c=$((((c<<1)|b)&m)); if ((i%n==0)); then xs=("$c" "${xs[@]:0:4}"); y=$(( ((xs[4]-xs[0])<<30) - 0x3fffd60f*ys[1] + 0x7d32617c*ys[0] )); y=$((y>>30)); ys=("$y" "${ys[@]:0:1}"); yd=$((120+(y>>24))); printf '\e[48;5;%um ' "$yd"; fi; done
This could probably be submitted to https://github.com/attogram/bash-screensavers/blob/main/gall...


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: