If all you care about is the end product and not how it's made, then you never become a better person. Your capacity for thinking and solving problems will never grow. You will never be an expert. Experts care about the process.
Of course, you may not care, and that's fine. It's important that people not be delusional about this though. A person with no medical knowledge and an AI will never be as good as someone with prodigious medical knowledge and an AI. The same is true for any profession, whether programming, music, writing, etc.
There are some good points here, but I disagree that programs are slow because they are accessible. Computers are ridiculously fast, and it doesn't take more time to display a string in Japanese than it does English.
The problem is ultimately with how the software is structured from the the start. Pressure to release fast, and the fact that most software engineers are not experts, means that nearly all software systems and libraries have poor design. They will be bloated and buggy, and difficult to work with.
Poor design means that development velocity dramatically slows as a project matures. Frameworks ensure that you start development fast, but eventually it takes a week to add a button.
Honestly, I think starting from win32 again would be a breath of fresh air. Also, note that I described it as an option, no one would be forced on Windows Lite. It was my own speculation that it would become popular.
It's kind of crazy that we have a hobby OS that supports Linux infrastructure so that can support Wine infrastructure to support a Windows application. Very impressive!
I looked into writing an http server based on iouring myself, but all the resources I could find said iouring is less safe from a cybersecurity perspective.
Is there a safe way to use iouring for a webserver, or is libuv the better way to go, even though it has less performance?
No, the idea is that the actual key is the XOR of 3 completely independent keys. I think you were thinking of XORing a key with itself 3 times, which would just return the original key.
In the book, there is a cargo ship carrying 1/3 of a OTP. Other two other ships from two other companies are carrying the other thirds. This actually is a fairly decent method of transporting a OTP (I'm assuming there's some kind of physical security preventing tampering).
The book even talks later on about how only using the pad isn't enough, since it provides no proof of authorship or tampering. Vinge did a pretty good job w/compsci in the book.
No, the GPUs used in AI data centers don't have the capability to do normal graphics. They're completely useless for games and content creation. Additionally, B200s can consume up to 14kW of power. There are no consumer power supplies that could power such a thing.
The sad thing is all that silicon will basically be worthless.
I really like Iosevka, and though I haven't used it, I do like Berkley mono. Maybe I'll incorporate this into my list of terminal fonts in the future. It does look pretty sharp.
There need to be some serious regulations around prediction markets. I'm not sure they should even be legal. These "markets" are encouraging large amounts of fraud and manipulation. As far as I can tell, they offer no positive effect to society.
One possibility is that most of the code that matters is being written by hand, while enormous amounts of code are being generated for other things. People are being evaluated on their AI usage after all.
You probably also don't use a calculator because it uses a scary language called arabic numerals. Why write 123,456 when you could write out in english: One Hundred Twenty-Three Thousand Four Hundred Fifty-Six? English is your programming language and also your math language, right?
It's not ape coding. It's skill coding. People who don't have the skill to do math and logic ask others to do it for them.
The reason we have programming languages is the same reason we have musical notation or math notation. It is a far more concise and precise way of communicating than using natural languages.
We could write music using natural language, but no one does because a single page of music would require dozens of pages of natural language to describe the same thing.
This page was put together very well. It has interactive illustrations when needed (not excessive), and the explanations were informative yet concise. I also like how it brings up other uses of quadtrees, such as for images. This encouraged me to think about how they might be used elsewhere.
This looks very interesting. It says it has networking, cryptography, etc. Is there any documentation of the APIs? I can't try this out if I don't know what they are.
As far as I know, only Go uses Go's back end because it was specifically designed for Go. But the architecture is such that it makes it trivial for Go to cross compile for any OS and architecture. This is something that LLVM cannot do. You have to compile a new compiler for every OS and arch combo you wish to compile to.
You could imagine creating a modified Go assembler that is more generic and not tied to Go's ABI that could accomplish the same effect as LLVM. However, it'd probably be better to create a project like that from scratch, because most of Go's optimizations happen before reaching the assembler stage.
It would probably be best to have the intermediate language that QBE has and transform that into "intermediate assembly" (IA) very similar to Go's assembly. That way the IL stage could contain nearly all the optimization passes, and the IA stage would focus on code generation that would translate to any OS/arch combo.
LLVM: Pretty much everyone who has created a programming language with it has complained about its design. gingerbill, Jon Blow, and Andrew Kelley have all complained about it. LLVM is a good idea, but it that idea was executed better by Ken Thompson with his C compiler for Plan 9, and then again with his Go compiler design. Ken decided to create his own "architecture agnostic" assembly, which is very similar to the IR idea with LLVM.
Swift: I was very excited with the first release of Swift. But it ultimately did not have a very focused vision outlined for it. Because of this, it has morphed into a mess. It tries to be everything for everyone, like C++, and winds up being mediocre, and slow to compile to top it off.
Mojo isn't doesn't exist for the public yet. I hope it turns out to be awesome, but I'm just not going to get my hopes up this time.
Of course, you may not care, and that's fine. It's important that people not be delusional about this though. A person with no medical knowledge and an AI will never be as good as someone with prodigious medical knowledge and an AI. The same is true for any profession, whether programming, music, writing, etc.