Guillaume Lathoud's pageGitHubemail

JavaScript  (#)

Microphone arrays etc.  (#)

Less serious  (#)

Support this site  (#) opening an account at instaffo (smarter recruitment) or at BullionVault (physical gold & silver market). For both, opening is free, the rest is up to you. Worth a try.

About programming  (#)

In my opinion, these people wrote great pieces of advice:

"Boring things first", a web article from John Barnette: when starting a project, setup the infrastructure first. That's exactly the approach that the Chrome guys followed since the beginning: they had the browser update system finished first, before they started to implement any HTML/CSS/JavaScript feature.
(archived version)
"The most important skill in software development", a web article by John D. Cook. Tip: has to do with organization skills and complexity management.
(archived version)
Listen to your code before things are growing out of control.
(archived version)
"It's funny to me, I used to merely tolerate JavaScript...", a great comment on Hacker News that advocates for simplicity: use hoisting in JavaScript! It's always been there, and lets you write simple, readable and easily debuggable code. Declare the most important functions first, *then* go down into details.
(archived version)
"Rocket surgery made easy", a book on *actually* improving usability within a small or reasonable budget, by Steve Krug. Here is an example video.
A very important question to ask in a dev team is "Can you care?" (sorry, I could not find the author anymore). To care about others (including your own self in the future, going back to the old code...) implies to care about code, core language concepts, infrastructure (build & test systems) and communication (listening!). "Can you meta-care?" would mean to think about priorities. Is this or that worth doing? Why? Now? Later? Or maybe we should not do it? Or in a different way?

I can advise to have one's own projects on the side, for example starting with a few very simple topics, and growing those projects: researching around the topics while building working software. This beats all other possible jump-through-the-hoops training.

Having non-programming activities helps a lot, too, by giving distance. Otherwise, there is an unhealthy risk to fall into programming religion wars, caring about the wrong things.

McCready's Gossamer Albatros - solving the right problem

Readings  (#)

Online, for free:

D programming language

Science and more

Children, "education", etc.

Dead trees:


Code word "Professional"?


Writings  (#)

Internet Publications

PhD Thesis


  • Short-Term Spatio-Temporal Clustering Applied to Multiple Moving Speakers,
    Guillaume Lathoud and Jean-Marc Odobez,
    in "IEEE Transactions on Audio, Speech and Language Processing", Vol. 15, Issue 5, July 2007.
  • Sector-Based Detection for Hands-Free Speech Enhancement in Cars,
    Guillaume Lathoud, Julien Bourgeois, and Juergen Freudenberger,
    in "EURASIP Journal on Applied Signal Processing, Special Issue on Advances in Multimicrophone Speech Processing", 2006.
  • Audio-visual probabilistic tracking of multiple speakers in meetings,
    D. Gatica-Perez, G. Lathoud, J.-M. Odobez, and I. McCowan,
    in "IEEE Trans. on Audio, Speech, and Language Processing", accepted for publication, 2006.
  • Automatic Analysis of Multimodal Group Actions in Meetings,
    I. McCowan, D. Gatica-Perez, S. Bengio, G. Lathoud, M. Barnard, and D. Zhang,
    in "IEEE Transactions on Pattern Analysis and Machine Intelligence", accepted for publication, 2004.

Conferences (selection)

  • Threshold Selection for Unsupervised Detection, with an Application to Microphone Arrays,
    Guillaume Lathoud, Mathew Magimai.-Doss, and Herve Bourlard,
    in "Proceedings of ICASSP 2006", 2006.
  • A Sector-Based, Frequency-Domain Approach to Detection and Localization of Multiple Speakers,
    Guillaume Lathoud and Mathew Magimai.-Doss,
    in "Proceedings of ICASSP 2005", 2005.
  • AV16.3: an Audio-Visual Corpus for Speaker Localization and Tracking,
    Guillaume Lathoud, Jean-Marc Odobez, and Daniel Gatica-Perez,
    in "Proceedings of the 2004 MLMI Workshop, S. Bengio and H. Bourlard Eds, Springer Verlag", 2005.
    PDF, AV16.3 Corpus website
  • Unsupervised Spectral Subtraction for Noise-Robust ASR,
    Guillaume Lathoud, Mathew Magimai.-Doss, Bertrand Mesot, and Herve Bourlard,
    in "Proceedings of the 2005 IEEE ASRU Workshop", 2005.
  • Unsupervised Location-Based Segmentation of Multi-Party Speech,
    Guillaume Lathoud, Iain A. McCowan, and Jean-Marc Odobez,
    in "Proceedings of the 2004 ICASSP-NIST Meeting Recognition Workshop", 2004.

Research Reports (selection)

  • Observations on Multi-Band Asynchrony in Distant Speech Recordings,
    Guillaume Lathoud,
    IDIAP-RR 06-74, 2006.
  • Further Applications of Sector-Based Detection and Short-Term Clustering,
    Guillaume Lathoud,
    IDIAP-RR 06-26, 2006.
  • Channel Normalization for Unsupervised Spectral Subtraction,
    Guillaume Lathoud, Mathew Magimai.-Doss, and Herve Bourlard,
    IDIAP-RR 06-09, 2006.

Produced on 2016-11-16 by index.scm - by Guillaume Lathoud (glat _at_ glat _dot_ info)Valid HTML 4.01 Strict