The question isn't "is it worth learning" it's "is it worth learning next". What do you already know?
Focus on learning theory and standards (e.x. HTTP, websockets, MVC, security principals) and learning tools becomes easy enough you won't bother asking us if it's worth the time investment.
I'd like to have an aws glacier backup tool. I'd expect it to be open source, and be simple enough to read over. If it encrypts and decrypts documents too that's a plus
Pick what your passionate about and learn it deeply. However you would be well advised to take atleased one course on:
- networking, focus TCP
- Compilers, focus theory behind lex and yacc, or equivalent
- parallel algorithms, focus on lock free and message passing
- A.I. focus on or-tree search and genetic emergence. (Not ML, important but that comes later)
- functional models of computation and recursion.
That is incorrect. You've just defined P2P such that no commonly accepted P2P application meets it. At a minimum every P2P app you've likely ever heard of or used, baring maybe one exception, has at a minimum used third parties for orchestration.
> A plausible proof of "P != NP" won't be quite as simple to express, since it needs to prove that all such algorithms do not run in polynomial time.
That sounds hard but, If for any NP-Complete problem there exists no P solution then for all NP problems there is no P solution. So this proof sounds like it has the right shape.