Most writing spaces are full of incompetent people who are terrible at what they do, give bad advice, blame everyone else for their problems, and have wildly incorrect opinions on topics that they aren't qualified for.
In other words, most writing spaces are just like HN. Take your pick.
I get where this comes from, but at least in France and Germany it's not questioned that there will be assistance and even direct intervention from the gouvernement on the electricity market. We're talking about democracies with strong socialist components after all.
And also, Macron will definitely do everything to avoid another Yellow Jackets episode...
Maybe you can better explain what they're asking for. Because otherwise, I find it unclear. Isn't the point of OpenResty to provide a system for building your app right inside the webserver? Because you can absolutely do that with Caddy, by writing plugins.
> But there are many scenarios where being able to extend the HTTP server via Lua is more convenient than writing a plugin I would think?
Well, Caddy is written in Go, so it's only natural to write a plugin in Go. Statically compiled into your binary. We provide a tool called `xcaddy` which is used to produce builds of Caddy with any plugins you need. You just need Go installed on your system to run it, no other dependencies.
The reason why Lua is used for OpenResty is because writing plugins in C is... not fun.
You can absolutely do what you described with an HTTP handler module in Caddy. You'd just wrap the req.Body with a reader that watches the bytes as they're copied through the stream, and when you see the part you want to log, you do that.
We have a replace-response plugin which takes a similar approach, except it manipulates the response as it's being streamed back to the client. https://github.com/caddyserver/replace-response The whole plugin is just one file of Go code.
Encryption and use of signed certificates has certainly been a big help against web fraud. No, it's not perfect, and can't prevent certain kinds of phishing, but it has definitely raised the bar for would-be scammers. It makes it nearly impossible to spoof "amazon.com" in the browser, and it prevents passive snooping on open WiFi.
You can't make it impossible, but you can make it very difficult.
My elderly uncle almost gave $10,000 to a scammer who had convinced him that his nephew was sitting in a jail and needed this money to be paid for his bail. Luckily, he reached out to me for help and I was able to confirm that his nephew was at home, not in jail.
I honestly can't imagine some of the scams that are coming, particularly to the tech-vulnerable, if we don't do SOMETHING to make real-time deepfake video harder than it now is.
> That does not mean that one should not be aware that the creation of such words was based on laziness and ignorance and one should not coin any new words of this series.
You say this, and yet you are writing English and not Proto-Indo-European. Curious!
> all memory could be handed off to a separate dedicated thread that actually calls free().
You could go a bit further and have multiple concurrent threads mark the references, then sweep them up in a separate thread, too. Some sort of concurrent sweep and mark reference count system.
With concurrency you need atomics or locks to synchronize reference counts between cores, unless you can somehow guarantee that ref counts only decrement and can never increment.