class: middle, center # N00bing through Rust ### My journey through --- class: middle, left # Yuval Adam - Full stack developer - Freelance consultant - 10+ years Pythonista - [https://yuv.al](https://yuv.al) - [@yuvadm](https://twitter.com/yuvadm) --- class: middle, left # Slinging media files over UPnP - Reverse engineering a cheap HDMI/UPnP dongle - [https://github.com/yuvadm/rockcast](https://github.com/yuvadm/rockcast) --- class: middle, left # UPnP Casting - UPnP casting - Send a UPnP discovery packet over **UDP** broadcast - Dongle on LAN responds with some fugly **XML** - Serve the media file over **HTTP** - Send an XML request to the dongle pointing to the file - Send play/pause actions as neccesary - You can implement this with several dozen lines of Python It's on [https://github.com/yuvadm/slingr](https://github.com/yuvadm/slingr) --- class: middle, left background-image: url(https://cdn-images-1.medium.com/max/2000/1*TLk1BwXIZA5kaMhEbTXY0g.jpeg) background-size: cover # .white[Rust is **not** a high-level language] --- class: middle, left # Title 6 --- class: middle, left # Title 7 --- class: middle, left # Title 8 --- class: middle, left # Title 9