• Spyder : a scientific Python IDE. I do most of my scripting work on this. It is a very complete tool ; I really like the fact that I am able to see my scripts, the code outline, the console (either the interpreter or the IPython console) and the variables declared in the current environment in a single window.
  • WinPython : because Spyder is quite a b**** to install on its own, I get it from this distribution. Plus it comes pre-loaded with the main scientific modules which is very nice (NumPy, SciPy, Matplotlib, Pandas etc.).
  • Python Tools for Visual Studio : if you want to use visual studio as your Python IDE, that’s what you need. I don’t use VS often, but I find it usefull for debuging large structures or when I need to test applications between different environments. It’s also a good pick if you have to debug python and c++ code in parallel.
  • Unofficial windows binaries for Python modules : it’s often difficult to find or install modules compatible with your system. Well if you find yourself in such a situation, that’s where you want to look for.
  • NumPy module : used to efficiently manipulate large multi-dimensional array and scientific computing.
  • SciPy : a sibling of numpy and matplotlib, scipy add an extra layer of magic to these by providing additional scientific routines (integrals computing, differential equations solving etc.).
  • Pandas : THE module for structured data and time series manipulations and computations.
  • Matplotlib : the go-to module for your plotting needs.
  • scikit-learn : extremely complete machine learning module. It comes with a very extensive documentation, great examples and various datasets for you to train on.
  • Lifelines : survival analysis on Python (comes with very straightforward plotting methods).
  • Pybrain: a highly customizable neural network library for Python


  • Download R
  • RStudio : a great open source IDE. They also have a web framework called shiny now with which you can create interactive online reports or visualizations using R. I haven’t used it yet but I’m looking forward to !
  • : the R community is very active so it’s always interesting to keep up with the last packages or functionalities. They also have a lot of good tutorials.
  • Machine learning with R : you want to use a specific machine learning algorithm with R but don’t know which package to use ? Start here.
  • ggplot2 : I’m not sure but I think matplotlib was inspired by the ggplot2 package. That’s how good it is !
  • : as the name might suggest, you will find here simple examples explaining how to implement the most common statistical analysis using R.

Machine Learning

  • Jeff Heaton’s favorite e-learning opportunities : online classes of machine learning, statistics, math…Check out
  • Neural Networks and Deep Learning by Michael Nielsen : a great online introduction to neural networks, with example code and datasets. I liked the fact that you get to code your neural network instead of using a library. This way you have to make a direct link between the math behind the network and your code by implementing the algorithm yourself.
  • A non-mathematical introduction to using Neural Networks
  • Accessible ppt about neural networks


PCB CAD Softwares

  • Eagle
  • KiCad
  • Fritzing


  • The Art of Electronics 3rd edition, by Paul Horowitz and Winfield Hill
  • Getting started in Electronics, by Forest M. Mims
  • Practical Electronics for Inventors, by Paul Scherz and Simon Monk


  • An introduction to Calculus (a good one) : because let’s admit it, Calculus 1 and 2 (hopefully I stopped there) were no fun at all. Here you’ll be able to learn the same techniques but in a gentle and very pedagogic way.