This is great! Any chance of making it so that it can use email instead of SMS in the mobile app though? SMS gets expensive really quickly in Australia. Thanks again! :)
why did you not use something like websockets and layer on your security layer ?
I see you have done a fair bit of sophisticated work inside your "core-async" library. Was there nothing like socket.io-client, etc that you could have used for your transport layer and on the android client side ?
core-async is extension of core project for async environments with real multithreading. It is mostly contain working with data and syncing it with UI.
Sources of networking is inside core project. You will see how really complicated it is. Networking layer are also handle cases when servers are crashing randomly and restoring everything on clients after restoring.
We reimplement low-level networking because all underlying protocols are still bad. TCP usually freezes randomly especially in mobile networks. (this is very long story and i will post something someday about this)
WebSocket (that we are actually using) are freezing too.
Good protocol is QUIC from google, but it is written on C++ (i don't like it) and quite new.
Also most of the libraries a buggy, we implement simple and time-proven solution (that was done when i worked at Telegram).
Also I can't believe in socket.io because we are able to handle 1M connections per server and no one on Node.js ever available to do this.
Actually for network layer we need to implement much more complicated things: replace TLS. This is dangerous, of course. But TLS is source for HUGE lags in networks because of it's triple handshake. And on mobile networks ping usually big and application can try to connect in several seconds. When you remove TLS (like QUIC) then time to connect drops to 200ms and you don't need to wait for successful connection that also reduces latency. This is level of quality that Actor Platfrom try to satisfy.
[+] [-] ex3ndr|10 years ago|reply
[+] [-] jcr|10 years ago|reply
You might want to contact the EFF to see if they will add you to their "scorecard" for secure messaging programs:
https://www.eff.org/secure-messaging-scorecard
[+] [-] jakozaur|10 years ago|reply
Is there anything HN community can help you with?
[+] [-] wiradikusuma|10 years ago|reply
[+] [-] ex3ndr|10 years ago|reply
[+] [-] 0xdragon|10 years ago|reply
[+] [-] ex3ndr|10 years ago|reply
But we have email authentication now and we just not implemented it apps. We also can to do OAuth2 authentication.
[+] [-] sandGorgon|10 years ago|reply
I see you have done a fair bit of sophisticated work inside your "core-async" library. Was there nothing like socket.io-client, etc that you could have used for your transport layer and on the android client side ?
[+] [-] ex3ndr|10 years ago|reply
If you is interested in protocol, you can read docs: http://actor.readme.io/docs/protocol
Sources of networking is inside core project. You will see how really complicated it is. Networking layer are also handle cases when servers are crashing randomly and restoring everything on clients after restoring.
We reimplement low-level networking because all underlying protocols are still bad. TCP usually freezes randomly especially in mobile networks. (this is very long story and i will post something someday about this) WebSocket (that we are actually using) are freezing too.
Good protocol is QUIC from google, but it is written on C++ (i don't like it) and quite new.
Also most of the libraries a buggy, we implement simple and time-proven solution (that was done when i worked at Telegram).
Also I can't believe in socket.io because we are able to handle 1M connections per server and no one on Node.js ever available to do this.
[+] [-] ex3ndr|10 years ago|reply
[+] [-] posnet|10 years ago|reply
[+] [-] CatsoCatsoCatso|10 years ago|reply