Readit News logoReadit News
shay_ker commented on Unison 1.0   unison-lang.org/unison-1-... · Posted by u/pchiusano
pchiusano · a month ago
Erlang is great and was one inspiration for Unison. And a long time ago, I got a chance to show Joe Armstrong an early version of Unison. He liked the idea and was very encouraging. I remember that meant a lot to me at the time since he's a hero of mine. He had actually had the same idea of identifying individual functions via hashes and had pondered if a future version of Erlang could make use of that. We had a fun chat and he told me many old war stories from the early days of Erlang. I was really grateful for that. RIP, Joe.

Re: distributed computing, the main thing that the content-adressed code buys you is the ability to move computations around at runtime, deploying any missing dependencies on the fly. I can send you the expression `factorial 4` and what I'm actually sending is a bytecode tree with a hash of the factorial function. You then look this up in your local code cache - if you already have it, then you're good to go, if not, you ask me to send the code for that hash and I send it and you cache it for next time.

The upshot of this is that you can have programs that just transparently deploy themselves as they execute across a cluster of machines, with no setup needed in advance. This is a really powerful building block for creating distributed systems.

In Erlang, you can send a message to a remote actor, but it's not really advisable to send a message that is or contains a function since you don't know if the recipient has that function's implementation. Of course, you can set up an Erlang cluster so everyone has the same implementation (analogous to setting up a Spark cluster to have the same version of all dependencies everywhere), but this involves setup in advance and it can get pretty fragile as you start thinking about how these dependencies will evolve over time.

A lot of Erlang's ideas around fault tolerance carry over to Unison as well, though they play out differently due to differences in the core language and libraries.

shay_ker · a month ago
Very dumb question - sending code over the network to be executed elsewhere feels like a security risk to me?

I’m also curious how this looks with browser or mobile clients. Surely they’re not sending code to the server?

shay_ker commented on Hello-World iOS App in Assembly   gist.github.com/nicolas17... · Posted by u/pabs3
sanskarix · 2 months ago
This kind of thing is how you actually learn what's under the hood. Everyone's building with React Native and Flutter, which is fine until something breaks. Then you're stuck Googling black magic. Starting from assembly teaches you the real cost of abstraction.
shay_ker · 2 months ago
This is the most HN comment I’ve seen in a while. The real abstraction here is coding with LLMs btw!!!
shay_ker commented on WebRTC for the Curious   webrtcforthecurious.com... · Posted by u/sebg
Sean-Der · 8 months ago
I am so happy that WebRTC has so many implementations. Every developer thinks differently, it's good to have a implementation that matches your mindset.

* https://github.com/shinyoshiaki/werift-webrtc (Typescript)

* https://github.com/pion/webrtc (Golang)

* https://github.com/webrtc-rs/webrtc (Rust)

* https://github.com/algesten/str0m (Rust)

* hhttps://github.com/sepfy/libpeer (C/Embedded)

* https://webrtc.googlesource.com/src/ (C++)

* https://github.com/sipsorcery-org/sipsorcery (C#)

* https://github.com/paullouisageneau/libdatachannel (C++)

* https://github.com/elixir-webrtc (Elixir)

* https://github.com/aiortc/aiortc (Python)

* GStreamer’s webrtcbin (C)

See https://github.com/sipsorcery/webrtc-echoes for examples of some running against each other.

shay_ker · 8 months ago
Unfortunately, there's massive drift between WebRTC implementations. The status quo is Google's, which is used by Chrome: https://webrtc.googlesource.com/src/

And everyone else has to play catch-up.

A big source of the drift is having a common library for SDP parsing, but also necessary features like BWE, different encodings, etc.

For example, aiortc, python's WebRTC implementation, isn't quite at the level most would want. It isn't necessarily easy to tell, without clear benchmarks, which implementation is at-par with Google's.

shay_ker commented on Ask HN: Platform for senior devs to learn other programming languages?    · Posted by u/Raed667
shay_ker · a year ago
I'm a big fan of Execute Program from Gary Bernhardt:

https://www.executeprogram.com/

It uses interactive exercises + spaced repetition. It's really the only way I've managed to learn Regular Expressions.

shay_ker commented on Hetzner Cloud Expands to Singapore   hetzner.com/news/new-loca... · Posted by u/matteocontrini
Zealotux · a year ago
IIRC, they produce their own hardware (including using consumer-grade components, if I'm not mistaken) and optimize every bit for efficiency. Managed services also come with an extra fee. From my experience, they're also more selective about clients.

They're also based in Germany, so they don't have to pay the hyper-inflated SV salaries and probably don't overhire, but I'm only speculating here.

shay_ker · a year ago
Don’t AWS and GCP also produce some of their own chips and hardware?

But basically you’re saying, yes, AWS and GCP are making just as much, maybe more, margin as Hetzner?

shay_ker commented on Hetzner Cloud Expands to Singapore   hetzner.com/news/new-loca... · Posted by u/matteocontrini
shay_ker · a year ago
How does Hetzner manage to be so much cheaper than AWS & GCP? Are the other cloud providers just making THAT much margin, or does Hetzner have a special angle?
shay_ker commented on How to send progress updates   spakhm.com/updates-howto... · Posted by u/noch
shay_ker · 2 years ago
Slava's other essays are here, for those curious: https://www.defmacro.org/

u/shay_ker

KarmaCake day647September 21, 2018
About
you can dm me on twitter, @__smiz
View Original