My reading is the server with zsync can be any http server, client is zsync. Rsync on the other hand needs to use rsync on the server, and it scales badly because it does most work on the server.
Came here to find the thread discussing this. You stated what I'd think is the conventional wisdom and I expected this to be the top thread.
However, this thinking comes at the cost of UX (or Developer eXperience). Much more mundane instance of the same thinking is hiding elements of the UI you are not allowed to use. This often gets me thinking - is there a way to do this that I'm not allowed to see, or is it just that I can't find the function in the UI?
A solution for the DX issue is logging the real error somewhere only accessible for an admin. Has this been implemeted anywhere in the wild? For UIs, just be honest and show the menu items disabled.
Do you want to build the next generation internet platform?
Blockchains with smart contract support (like Ethereum) allow for arbitrary computations with guaranteed integrity. However, computations are public, which is often a major limitation. Partisia is making a blockchain where computations can also be confidential, even to the nodes that are running it. It is done with a blockchain based secure multiparty computation (MPC) orchestration platform. MPC is an extension of ZK proofs, giving the possibility to perform arbitrary privacy-preserving computations.
We need engineers to work on a new programming language for writing smart contracts which allows distinguishing public state from private state. Executing computations in MPC requires specialized optimization and reordering of the computation graph - which needs to be integrated into the execution environment of the language. Expertise in compilers, optimization, graph theory, distributed systems or cryptography is helpful.
We are also looking for people to build the governance layer of the blockchain, i.e. the operating system for users of the platform. This work will be part software part cryptographic engineering. Understanding of game theory and finance is helpful.
Great resource, I'd missed a few goodies. https://javascript.info is similarly good in teaching modern Javascript.
I wish there was such a resource for modern C++ though. I learned and used C++ in the 90s and early 2000s, and apparently the language has progressed a lot meanwhile. People say idiomatic modern C++ (C++14/17/20) can be pleasant and metaprogramming capabilities are really powerful.
Abstraction discovery is a hard problem in general. Good names help, but there's probably more we can do. Tooling finding a common pattern that the abstraction eliminates, perhaps?
It's no really about experience but rather about the ability to reason from first principles. Lots of developers with experience don't even attempt doing something because the structure of the problem demands it; they would only do something if they've seen a similar approach before.
Lambda is not suitable for certain workloads. It's impossible to know what is the problem in this particular case from the details provided by the author. I can give some common examples where Lambda would NOT work well:
* if the code you run has heavy initialization phase that could be amortized across multiple runs. Lambda is not a god fit because you'd do initialization for every request. Cold start latency compounds with code initialization to make the problem worse
* if the function workload involves lots of waiting for network I/O (REST APIs, lots of database calls, web crawling). In this case you'll be paying for each lambda function to wait for the network, while if you run the same workload on a single machine it will be cheaper because you can wait for many requests in parallel in different threads without consuming much resources.
Having mechanical sympathy for your workload does help.
It's certainly task-dependent at least to some extent. If the task at hand is to fix a zillion spelling errors in the UI, there is certainly no 10x variance in programmer's ability (there might be a big variance in motivation though, and individual performance is a product of motivation and ability).