To anyone reading this and assuming it applies equally to electrical conduit, it does not, which is why the NEC specs a maximum of four 90 degree bends between pull points. You could probably manage five, as was described, but it is technically disallowed (again, for electrical wiring - the NEC doesn’t care about networking).
Have you done any updated benchmarks on maximum supported writes/sec since the talk you gave comparing single-zone, single-region, etc.?
I recently had a potential use case for this, but it required somewhere around 600 writes/sec at a minimum, and it wasn’t clear what the ceiling was for rqlite without sacrificing durability guarantees.
rqlite creator here. I have performed a fair amount of performance testing, some of which I outlined in a talk to the CMU Database Group a few years ago. Details:
An important thing to note: this testing was done 4+ years ago, on moderately-powerful hardware for the time. With higher-end, more modern hardware you may get even better results.
Thanks for the reply. Yeah, that’s the talk I was referring to.
I suppose I could try my own benchmark out tbf. I’m curious to see what it can do on today’s hardware. I would think it’s mostly network-bound for Raft consensus, though the 10x ping time increase you demonstrated without an appreciable drop in writes suggests it’s more complex than that.
I did introduce Queued Writes[1] since that talk, allowing you to trade off performance versus immediate durability. It may interest you -- network is much less of a factor then, and you should get a 10-100x increase in throughput.
I am personally offended by [0]. Maybe you should spend some time doing proper data modeling when you design your app, and maybe adding a new column should be a painful exercise.
Haphazard schema is the quickest way to develop terrible performance, loss of referential integrity, and insane queries. Well, outside of sticking everything into a JSON column.
I've used JSON as an additional options input to a native-compiled CLI program's various commands because 1) the schema of each option is radically different, 2) they need to be passed most of the way down the call stack easily for each stage of our calculation and report generation.
It works fantastically well, and don't let anyone tell you that you MUST bloat the CLI interface of your program with every possible dial or lever it contains. We should all be cogent of the fact that, in this very young and rapidly evolving profession, textbook and real-world best practice often do not overlap, and are converging and diverging all the time.
And some closed proprietary software does things like adds a few additional fields for pragmatic end user extensibility like this.
The practice predates JSON, but sometimes your bespoke string or ID or whatever in field "Custom 1" is all compromise you need to make things work well.
OK… there are some exceptions where it makes sense. In the web dev world, though, the overwhelming majority of cases I’ve seen it used are along the lines of “we don’t know what we might need later,” AKA “either product didn’t adequately specify the requirements, or we didn’t do proper data modeling.”
Do you know how many CI/CD pipelines run on shell scripts?
Another example is small utilities. I wrote one to login to MySQL DBs at work. We have to use Teleport, which I dislike, and it has MFA. So I made a small SQLite DB that has cluster names, endpoints, and secret ARNs (no actual secrets, only metadata), and then wrote a shell function that uses fzf to parse the SQLite DB contents, then ssh tunnels through an EC2 with Teleport to the selected MySQL DB, using expect with a call to 1Pass to answer the password request, and then picks the first available port >=6033 to connect the mysql client. It also tracks the MySQL DB : port assignments in the SQLite DB and waits for the client to exit so it can tear down the ssh tunnel. The only input I have to do beyond selecting the DB is answering a push notification on my phone for MFA.
> replacing 10-LOC shell scripts with Python
The startup time would drive me insane. I love Python, but it’s not great for stuff like that, IMO.
It’s more that tired experience has taught that of the various disciplines, web devs are the most likely to have a shaky-at-best understanding of fundamentals, and thus do silly things like assume network calls will never fail, or store everything in JSON blobs and then wonder why their queries are slow.
I’ve also worked with some awesome web devs, to be fair.
You are expecting third party countries to begin litigation on crimes that happen outside of their borders - even if they're not even strictly illegal where they're headquartered?
That shit never happens, and if it would, you'd first have to start jailing lots of S&P CEOs for the companies crimes that are committed in other countries and never amount to anything, precisely for the same reason.
Like literally every company thats involved in any mining, drilling etc. They always don't adhere to local environmental regulations etc
What? No, you are completely wrong. The crime was committed in many places. In the USA, but also in several EU countries (Germany included).
In fact, the numbers were more than 10x higher in the EU (since we use a lot more diesel cars) than what they were in the USA.
600 000 vehicles were affected in the USA, while 8.5 million vehicles were affected in the EU.
USA courts, effectively, issued a fine more than 200x higher per vehicle affected, than what we did in the EU.
No one that actually followed the news (and isn't German and therefore completely biased) will say with a straight face that EU justice system didn't favor VW due to established interests. The German government obviously manipulated the judicial system all over Europe to let the case go away.
It also says a lot, that it had to be the Americans bringing the case to light. A lot of people probably knew, but the control that the Germans had (and still have) over European economy and judicial systems didn't allow anyone inside the EU to speak up.
The last time I tried to run Tachyon: The Fringe was Windows 10, and it failed. IIRC I could launch it and play, but there was a non-zero chance that a FMV cutscene would cause it to freeze.
I see there are guides on Steam forums on how to get it to run under Windows 11 [0], and they are quite involved for someone not overly familiar with computers outside of gaming.
Word works very well without surprises if you have learned how to use templating and proper headers - the semantics. Big if!
I will claim most people still just do selections and change font/weight.
So what is good design? Something which enforces our geeky ideas of a base font? Or something which let people easily do what they want to do and get work done?
Who should get the least amount of surprise?
Design is taste. Taste leads to principles. Principles makes things easy. Design is also compromise. Compromise is hard. Design is hard.
In fact best way to use Word is to write LaTeX in it and then save as .txt and run pdflatex. It is truly an amazing editor capable of great typesetting.
While it is possible to use "semantic" styling and page layouts and templates in Word, I would argue that Word owes its popularity to the fact that no user is surprised when they select text, change the font, it does not change it anywhere else.
It is one of the tools that popularised "WYSIWYG" as an approach, and as we know from many other tools, you lose something when you adopt a tool like that.
Now, I'd always recommend and use a TeX-based document layout system (but despite my huge respect for DEK, not Computer Modern family of fonts, even for mathematics), but many struggle with non-visual document entry: it is no surprise scientific community is the only one which standardized on it since inputting mathematics visually is a PITA.
reply