Levans' workshop

Experiments and thoughts about Machine Learning, Rust, and other stuff...

Articles


Some thoughts on the objective functions of GANs

It has now been accepted as common wisdom that Generative Adversarial Networks (GAN) minimise the Jensen divergence between the real data distribution and the generated one (Goodfellow et al, 2014). In this article I'm going to study a little more closely the interpretation of these losses in terms of minimization …

Smithay is Live

Finally, it was done last week, Smithay has its own website. Over the past months, I've moved my wayland-related projects to the Github Smithay Org, and after a lot of work on smithay (the crate) itself with @drakulix, we've released the 0.1 version! This is a great milestone for …

Why I love Rust

Disclaimer: This is a subjective and personal point of view. As such, please take it with the grain of salt it deserves. I just want to share it, hoping I'm not alone feeling that way. 😊 Most Rust aficionados agree on this point: Rust does have a difficult initial learning curve …

  • Tue 27 September 2016
  • Rust
  • en

Wayland libs 0.7, and a 3rd rewrite

This blog post is about the new design of my wayland libs. It's not a tutorial, but rather about the design choices I made, and why I made them. I'll start with a quick recap of what wayland is, from an API & protocol point of view. If you already know …

  • Mon 30 November 2015
  • Rust
  • en

Using Wayland from Rust, Part 1

Hi all. During the past few months, I've been working on some crates for using Wayland in Rust. Now, they have reached a step that I could call "mostly usable": not yet finished, but a good basis to start using them. So I'm writing this note to present them, and …

Booter gentoo sur un Banana Pi-R1

Je me suis récemment acheté un Banana Pi R1. Cette petite bête, fortement inspirée du fameux Raspberry Pi a toutefois un but assez différent. En effet, elle dispose de 5 ports Ethernet Gigabit, ainsi que d'une puce wifi. Il s'agit d'un routeur personnalisable presque complètement open-hardware. Disposant également d'un port …


  • Thu 10 September 2015
  • Misc
  • fr

Monitorer ses machines avec collectd et grafana

Je me suis depuis peu mis en place un système pour monitorer mes différents serveurs, en utilisant collectd, un service permettant de collecter et remonter et centraliser de nombreuses métriques sur des serveurs linux. Néanmoins, l'interface d'affichage des métriques le plus classique, Collectd Graph Panel, bien que simple à mettre …

Les emprunts et les durées de vies en Rust

Les emprunts (borrowing) et les durées de vie (lifetime) sont deux concepts centraux de Rust. Ils peuvent parfois s'avérer difficiles d'accès, car finalement très intriqués l'un avec l'autre. Je m'en vais donc écrire ce billet, en vue d'en expliquer les tenants et les aboutissants. Résumé des bases à avoir Je …

Pseudo-héritage en Rust avec Deref

Un des aspects absent de Rust à l'heure actuelle (1.0) mais toutefois assez demandé est l'héritage, comme on peut le trouver dans de nombreux autres langages de programmation. Il y a somme toute deux approches à l'héritage : celle qui utilise les méthodes virtuelles, et celle qui ne les utilise …