Re: C++ is great
I'm not going to read that, and I don't know what non-orthogonal means or why it's a problem, but I do know that I've been successfully shipping products with C++ for many years now.
444 posts • joined 13 Jun 2009
I recently moved to Edinburgh from London and am using the Huawei device as a replacement for fibre. The SIM is Vodafone's pay monthly unlimited data one and is working nicely so far. 90Mbps is average so far, but should hopefully go up once I can get a 5G signal. The cost is slightly cheaper than my previous Virgin Media 100Mbps fibre deal. It remains to be seen how it holds up in stormy weather.
There is an underlying assumption here that people invovled in software are largely a) American, and b) speak English natively.
The first is just American Privilege pure and simple.
The second negatively affects anyone who has to use a dictionary or online translation service to contribute to a project. They're not likely to be aware of the nuances of certain words.
C++ is unfortunately doomed. A lot of fantasic work went in to C++11 and beyond but it's a dying language. Memory safety issues aside (which should have been largely solved by RAII), it's too complex (there are 5 ways to initialise a variable, xvalues, glvalues, prvalues, lvalues, rvalues), its networking framework is too much but also too little and there's zero mention of unicode. I get the feeling that companies like MS, Google and Mozilla are of the opinion that trying to fix their broken C++ code is too much effort when they could just rewrite in Rust.
I'm not a fan of the visual look of Rust source code but I think it'll become a desired skill if not by its merits, but by the herd wanting to use it.
Our server code is written in C++ and I can't remember the last time we had a crash or a memory leak. I'm not saying we're perfect but C++ has come on leaps and bounds since C++03. Rust protects you from this unless you go 'unsafe', and the devs that can still make modern C++ crash and leak will probably get to do the same in Rust.
That said, what will get Rust more widely used is the 3rd party libraries / source code. With C++ it's a pain and that random HTTP parser you cloned from github may not be the best quality.
Also, networking. C++'s ASIO stuff is a headache, I'd be surprised if Rust is in a similar boat. I'm considering dropping ASIO altogether and going straight to using io_uring.
Are you serious?
People publish Open Source software because they're hobbyists who think others might find their work useful. They owe anyone else absolutely nothing! Others are totally free to not use their software.
Who in their right mind would spend a weekend writing a 'design defence' document? Crazy.
Yes, but that's not what I'm suggesting. It should be possible to run several separate redis instances on each core and have something distribute the load. This is actually possible with Twemproxy, but like I said, that is out of date, if not dead.
I've even been tempted to fork the redis code so that I can run multiple, independent, Redis server threads in a single application.
And yes, the serialisation does seem to be an overhead. Even with twemproxy the main process will use 100% of its core even though there are slaves on the same machine doing the actual redis commands.
The problem with Redis is its single-threaded nature. It wastes cores, especially if you're running it in the cloud. You could use Twemproxy as a proxy to several redis instances running on separate cores on the same machine, but twemproxy doesn't support all the commands and seems to be dead. There is redis-cluster but that still comes with a use-at-your-own risk warning.
This post has been deleted by a moderator
Biting the hand that feeds IT © 1998–2020