Security does not depend on code review. They have stronger sandboxing and have granular permissions that the user must allow.
My point is running untrusted code securely should be the operating systems job. It is possible to do this at the operating system level, a browser is not required. The problem is the security model for desktop operating systems is ancient and has not kept up with today's requirements.
I don't understand the push to make the browser a tool for securely running general purpose applications. This is the job of the OS. We keep building layers on top of layers of abstraction instead of fixing or improving what we have.
I think web apps are dead anyway and the browser is heading towards being a legacy software. The future is small ephemeral UIs generated on the fly by LLMs that have access to datasources. WASM is too late.
> The web is fascinating: we started with a seemingly insane proposition that we could let anyone run complex programs on your machine without causing profound security issues.
Isnt this what an OS is supposed to do? Mobile operating systems have done a pretty good job of this compared to the desktop OS.
physics is not easy. its pretty challenging and has unending scope.
audio can also have unending scope if you want to do physically simulated Spatial Audio.
Im not sure if AI/pathfinding are worth developing as part of an engine. I feel like their implementation is heavily dependant on the game type, engine implementations often get in the way, rather than helping.
rendering is a beast, especially if you need a long draw distance and have a world that doesnt fit into gpu memory.
The whole task of putting all the pieces together into a cohesive package is a huge undertaking as well.
yep, Im not saying its a bad design or a dealbreaker it is probably find for the vast majority of games and can provide a nice api for people coming from web games.
animation blending isn't that bad. If you have a two poses represented as lists of quaternions and positions, all you have to do slerp between the quaternions and lerp between the positions.
Speaking of async coroutines, my belief is that they don't get used enough in other game engines because their lifetimes are not tied to anything - you have this danger where they can outlive their entities and crash your game.
Async coroutines in the way you are describing have terrible/unpredictable cache/memory access behaviour which leads to bad performance. Every time you switch coroutines you need load memory from (most likely) an unrelated region causing slowdowns.
If it is clearly personal and you do not have an objective answer then let this be a cause we can choose to donate to based on our personal assessment.
Agreed, engineering is about building stuff, not making discoveries about how the universe/existence works. Engineering often results in scientific discoveries but this is incidental.
Mathematics isn’t a science, it seperate thing entirely. Science is about trying to understand how the real world works. Make falsifiable hypothesis then do repeatable experiment do will either prove or disprove hypothesis.
Computer science isn’t really a science either. It should be classified as a branch of mathematics.
Please change electric to battery powered... I don't think the largest mining trucks are battery powered. They have diesel generators that power an electric drivetrain.
I watched this talk a while ago and it initially blew my mind and made me very upset with the state of OSDEV.
The speaker basically says OSDEV ignores the reality of modern computers. There are multiple binary blob operating systems with direct memory access running on a modern computer. OS researchers live in a linux bubble ignoring this. While this is true, I don't see how this is a technical problem for engineers to solve. This is a cultural/political/economic/moral problem.
Companies want to keep their stuff secret and governments want to be able to put backdoors into computers. How can an operating system software verify that the hardware is doing only what the operating system is telling it and nothing else if the operating system cannot verify the circuit layout of the computer? How can software verify the circuit layout? Afaik the only way to do this is look at the chip(s) through a microscope which is out of the scope of OSDEV.
I feel like this speaker has gotten me all riled up about nothing.
Code can be parsed into an abstract syntax tree. Structural editing is editing code at the tree level. You probably already do it using expand/shrink selection.
If you have a selection eg. a node on this tree, expand selection would move up one level on this tree and select the higher node and everything underneath it.
Now imagine a grammar/keymap which is optimized for traversing, selecting, mutating code at this level. I think this is the future, not the VIM grammar. Many IDE's already do this style of editing to an extent.
Most VIM proponents mention the power of VIM's editing grammar as a selling point. I think the idea of having an editing grammar is good but VIM does it at the wrong level; text, instead of syntax aware tree.
You can beat physics. Big cars means more energy to dissipate in a crash. If the regulators had half a brain they would of taxed cars based on volume + mass. Large cars also reduce visibility which further reduces safety. There has been a car size arms race for the past 30-40 years. Cars are getting bigger so you get an even bigger one to feel safe and have enough seat height to see around you.
Being concise and to-the-point is just as important as using simple English.
That blog post is too long for the ideas it conveys (kinda ironic?).
Here are some things I found tiring to read:
"There's an Italian dish called saltimbocca, which means "leap into the mouth." My goal when writing might be called saltintesta: the ideas leap into your head and you barely notice the words that got them there."
^ This analogy is distracting and not required to communicate a simple concept.
"It's too much to hope that writing could ever be pure ideas. You might not even want it to be. But for most writers, most of the time, that's the goal to aim for. The gap between most writing and pure ideas is not filled with poetry."
^Just delete this. What are you trying to say here?
"It's like trailing a long train behind you that readers have to carry."
^I don't understand this analogy. Long train I am trying to carry behind me? That is a ridiculous and distracting image you have put into the readers mind.
"If the friction of reading is low enough, more keep going till the end."
^This is an obtuse and awkward way of saying: "People are more likely to read things they easily understand"
"Indeed, lasting is not merely an accidental quality of chairs, or writing. It's a sign you did a good job."
^ Where did chairs come from?
But although these are all real advantages of writing simply, none of them are why I do it. The main reason I write simply is that it offends me not to."