Orestis Markou

Software Deviser

Going low level with TCP sockets and :gen_tcp

TCP sockets are used everywhere, though most of the time the details are hidden in high-level APIs and protocols. However, the BEAM makes writing such low-level network code a breeze — this talk will give a brief overview of how Erlang’s built-in :gen_tcp can be used to build low-level client and server applications.

The audience should be already familiar with Elixir code and some core BEAM concepts such as processes and messages.



I have been working for 15 years as a professional developer. I’m currently working with EDMStudio, developing digital interactives and infrastructure for museums and science centres.

I’ve developed server apps with Python (Django/Twisted), and in the distant past, Java 1.4. I’ve recently snuck a couple of Elixir apps into production, and it was good.

I’ve developed UIs with Objective-C (Cocoa, UIKit, SpriteKit), IronPython, PyObjC and of course HTML/CSS/JS. I’ve also dabbled with CoreAudio for real-time audio processing, and goofed around with LEDs, Arduinos and other fun stuff like that.

I consider myself a polyglot, full-stack developer though I cringe at these specific terms. I originally come from Athens, Greece, but I’m currently living in Luxembourg.

Github: orestis

Twitter: @orestis