Comment Re:Of course (Score 1) 362
It's not called the People's Republic of California for nothing.
Nevertherless, it’s light years ahead of Textard
It's not called the People's Republic of California for nothing.
Nevertherless, it’s light years ahead of Textard
Littlest stars (red dwarfs) live longer. A lot longer. A fuck-ton longer. So long in fact that we have never seen one that has used up all of its nuclear fuel. Not even close.
You honestly believe that existing C++ code out in the wild today would most likely pass a borrow checker with just some extra ownership info tacked on?
Nope. Nope. LOL! Nope.
If you can get away with just a major refactor, you'd be lucky. All other cases, the entire architecture would likely need to be vetted, resulting effectively in a rewrite. The only things preserved would be auxiliary modules and perhaps the project name.
That might work if Firefox still had 30% market share. Truth be damned, folks will simply say the site works in Chrome, so Firefox will be blamed. And even if they recognize that Firefox isn't at fault, it's easier to tell people to use Chrome than to get all those broken web sites to patch.
Rock. Hard place. Pragmatism.
Why? I'm not trying to be argumentative, but different jobs have vastly different impacts.
30 years ago, I ran the IT for a small manufacturing company with 150 employees. One thing I did was to run the payroll and print the paycheques. A lot of techs actually earned more money than the president, thanks to overtime.
The US is hellbent on destroying public education, preventing higher education for as many citizens as possible and going as far backwards as possible
The bourgeois need hordes of semi-litterate drones that will happily buy whatever shit they sell, without asking questions, and employees that will do whatever they are told, without asking ethical questions.
Of course, only the bourgeois can afford the high-priced education needed to rise above the semi-educated masses for their offspring.
Calvinism.
The deeply-rooted calvinism that totally soaks WASP culture is the main reason for all ill social isses.
(Calvinists believe that the poor are without morals, because having no morals make them lazy, and the sacred duty of every calvinist is to punish the poor, because they have no morals).
Yankees are stupid. Their greed outsources production to China.
The Chinese are smart (their average IQ is the highest in the world), they gain experience manufacturing shit for the Yankees.
The US have only themselves to blame for their woes.
Whenever I did a website, I did my own thing. And when I was maintaining one such website, one day, I see strange garbage strewn accross my PHP code.
Turns out the server had been compromised, and every file was injected with malicious code, but only if it was part of a Wordpress website
Because of this, the web hoster yanked every Wordpress website from his server, except mine, which, despite being riddled with malware, did not do anything harmful because the malicious code was never called by Wordpress
That definitely cured any idea I might subsequently have about using a CMS
On a related note, "feo" means ugly (and other negative connotations) in Spanish. It would not go unnoticed.
Mostly desert? Don't know where you got that from. The biggest desert in India, the Thar Desert, is less than 5% of the total land area of India. Monsoons regularly douse the majority of the country with some parts of the country receiving the highest rates of rainfall in the entire world.
What you've been describing, I call "lifelong geek syndrome". You've known it for so long, you've forgotten what it's like not to know it. You've invested so much time learning the specific tools of your trade, you lean toward disdain for those reluctant to follow the same path.
I started learning C three decades ago. C++ about 7 or 8 years later. And frankly, compared to today they were a mess. Still are a mess, but Stockholm Syndrome and experience make it somewhat manageable. Most of computing is like this. You and I have spent a great deal of time learning how to avoid use after free, to avoid memory leaks, adopted unique_ptr instead of bare pointers whenever possible, honing our craft, debugging obscure race conditions in production, finding tools to shore up the gaping holes in C and C++'s memory safety model, etc.
But to claim that everyone of any experience level should know to adopt, configure, and use the baroque array of disparate tools to help C and C++ be less of a collective dumpster fire is nonsense. If software engineers built bridges and airplanes, death would abound.
That's like a great writer claiming that English is an elegant language with no possibility of substantial improvement.
There are several sorely missed features in C++ that everyone agrees would be great ideas and simply things were it not for breaking ABI compatibility and 30+ years of legacy.
Rust is not perfect (and not even necessarily the best replacement for C when looking at alternatives like Zig), but it is by far the closest I have seen to a C++ with unique_ptr/shared_ptr effectively being mandatory and enforced by the compiler, sane and consistent module support, typesafe macros (c'mon, the preprocessor is a dumpster fire all on its own), a simpler template metaprogramming model, comprehensive dependency management, forbidding diamond inheritance patterns, cleaner functional programming options, etc.
You are an expert in the C and C++ tool domain, but that's not an industry goal. C and C++ are not and have never been the goal. No language is. The goal is getting good software released, fewer security problems, and faster release times. That's it.
If someone starting out their career today by following your advice that C, C++, a pile of different add-on tools, and years of experience learning to avoid 30-40 years of legacy cruft, they are doing themselves and the industry a gross disservice.
Go should displace Java to improve the state of things precisely because it doesn't consume RAM like it's going out of style and is a much better fit for smaller, composable functions in the cloud. Rust should replace C++ for new systems level development whenever possible precisely because most folks with less than 30-40 years of experience in the industry will produce safer, more secure, and more maintainable code by virtue of learning from and adapting the lessons of those 30-40 years of mistakes.
But by all means, try to defend #define, #ifndef, and null-terminated character strings as some sort of natural virtue or how things like the iostream were paragons of modern design rather than poorly conceived and byzantine minefields.
Most major relational databases today have an indexable JSON data type. You don't need a thousand tables with hundreds of foreign keys.
MongoDB is a one-hit wonder whose fifteen minutes were up quite a while ago. (I also find it difficult to forgive MongoDB for the numerous data integrity bugs they've had over the years.)
There's definitely use cases for NoSQL. That doesn't necessarily mean that all NoSQL offerings are worthwhile. I for one like DynamoDB and Redis for certain specific use cases. MongoDB on the other hand can kick rocks. I'd rather use Postgres with indexed jsonb columns over MongoDB every day of the week and twice on Sundays.
Because one day, you're gonna need something beyond JSON, and the MongoDB dev will not be happy on that day. They'll make excuses, wrap their data in makeshift JSON, tie their code in spaghetti knots, and deny to their last breath that anything has indeed gone horribly wrong.
And all because they simply refused to properly learn SQL and use the various highly tuned engines that implement it.
It is impossible to enjoy idling thoroughly unless one has plenty of work to do. -- Jerome Klapka Jerome