Where do you see Erlang in future tech?

Just saw an article about neurotechnology and I immediately thought Erlang could be a great fit for it!

What future tech do you think Erlang could be a good fit for? Or which industries do you see Erlang getting into?

5 Likes

Not sure if it’s “future tech” but working in ops a fair bit I’ve been thinking about some form of control plane / remote management software using Erlang: If you’ve ever used Ansible, its performance really tanks with large numbers of hosts - one SSH process per remote host, and its modules run slow. Yet it’s super easy to get started with, so I think there’s quite some efficiency gain to be made here …
We have super fast computers - what is stopping the package module from completing within just latency + (small number)? Or even faster, if you could pipeline the next module to run while waiting for one to complete.

With Erlang I think something performing better could be built - maybe some smart combination of remote management systems like Ansible and Nix that allows you to declaratively manage a large fleet of hosts with atomic commit / rollback. Or maybe this already exists, and I just didn’t look far enough :slight_smile:

So for me, industries I see Erlang getting into - or, having “good cards” to get into - would be IT operations / administration for sure. Mainly because of its lightweight processes allowing you to scale SSH (and other) connections easily.

1 Like

Possibly 3D software development? One of my favorite 3d ‘box’ modelers is Wings3D which was inspired by Nendo. The 3d modeling program, Nendo, was used by Weta for the ‘Lord of the Rings’ trilogy. Bay Raitt was the 3d modeler. I was simply amazed that Wings3D is written in Erlang when most 3d applications are written in C/C++. And Wings3D is fast! :rocket: Wings3D got its name from Winged Edge which is a data structure to represent polygon meshes in computer memory.

8 Likes

We are using it for Database Virtualization! https://dl.acm.org/doi/10.1145/3546186.3549926 which makes sense, numerous databases are already implemented in Erlang :smiley:

6 Likes

That looks very interesting! Do you have the presentation PPT than can be shared?

2 Likes

Not sure where the slides are, but here is the associated talk

3 Likes

Thanks for the link. Will take a look.

1 Like

Healthcare, heathcare, healthcare. I know that the we’re already in a few places within this industry, including where I’m at these days…

I work on this platform and I’m delighted to say the team behind this is just brilliant!

5 Likes

Energy. We’re in the midst of a sea change in the structure of our energy system. The grid moving from a handful of huge controllable centralized generators to millions of small, uncontrollable, distributed generators. Couple that to the increase in load from EVs and the opportunities presented for controlling load from EVs and water heaters and more and Erlang starts to look like an interesting fit. High availability, scalability, and fault tolerance are critical to any software we build to manage this transition.

Even without considering the energy future Erlang is a good fit. A major contributor to the 2003 Northeast blackout was a race condition that led to a deadlock in a software system. If only there were a way to time out and crash… I think failing early and loudly could have really helped with this situation.

@starbelly funny you should say healthcare. I first learned about Erlang while working desktop support at a hospital and wondering about how to build software that didn’t always go down.

10 Likes

absolutely agree that probably energy monitoring (maybe management) is a interesting possibility for erlang.

3 Likes

I don’t know if the phrasing is intentional, but I find it delightful. This is, unfortunately, the norm nowadays for software to always go down.

1 Like

There are loads of good languages and runtimes out there. If we are going to see Erlang anywhere, I think it’ll be where Erlang is strongest, which I think is where the problem can naturally be modelled as a lot of concurrent, communicating agents. As the problems that we as an industry face grow in scale, I suspect we’ll see even more problems evolve into being a natural fit for Erlang. The main hurdle then is how to gain engineering mindshare, since no matter how strong Erlang is in it’s niche, if people aren’t familiarly with it and naturally reaching for it to solve their problems, it won’t get used.

Interestingly, though, the spirit of Erlang is already everywhere in tech. Almost every popular language and runtime nowadays has features inspired by Erlang, so in that sense, I see Erlang in essentially all future tech.

5 Likes

The project looks really interesting, and it’s quite an unexpected for me application of Erlang/OTP. Do you have any open to public papers/docs with any relevant technical details, like a general architecture, data flows, etc.?

On another note, is the whole project is implemented as a solid body using Erlang, or some of its parts (like for example SQL parser and other SQL transformations) are utilizing other languages and technologies? In other words, how well Erlang/OTP coexists in your project with other languages and technologies?

This paper covers the platform more indepth: https://datometry.com/wp-content/uploads/2017/09/Rapid-Adoption-of-Cloud-Data-Warehouses-Using-Adaptive-Data-Virtualization-Technology.pdf

It is 99% Erlang.

1 Like