Posts in Category: Tools

Ethoscopy and Ethoscope-lab

  • Ethoscopy is Python software for analysis of ethoscope data – and more! – created by Laurence Blackhurst
  • Ethoscope-lab is a pre-baked Docker container featuring an installation of the multi user Jupyter Hub with Python and R kernels, ready to be used with Ethoscopy and Rethomics.

Why using ethoscope-lab?

Let me simply explain how we use it in our lab. We arranged a powerful workstation that acts as lab server and run a dockerized ethoscope-lab on it. The workstation has a local copy of all our ethoscope data (about 8 Terabyte as I type) and ethoscope-lab has local access on those, offering the quickest loading time. Users can then use their computer, or tablet to connect to the workstation and perform data analysis directly from the browser. The setup frees them from working at their desk and allows access to their data from anywhere in the world, guaranteeing at the same time the fastest computational performance even when they work on their laptops. Moreover, the system uses Jupyter notebook as default, meaning each analysis can be nicely annotated and exported to be shared with the world post-publication, along the original raw data.

To give a practical example: this series of repositories on zenodo contains the entire dataset of our latest paper (316Gb) and it’s paired to all the notebooks we used to generate each figure. Readers can download the dataset freely, install ethoscope-lab as docker container on any computer (irrespective of the operating system they adopt) and reproduce all our analyses!

Ethoscopy / Ethoscope-lab paper on Bionformatics Advances
Ethoscopy on GitHub
Ethoscopy on PyPi
Ethoscope-lab Docker container on DockerHub
Jupyter Notebook tutorials for Ethoscopy on GitHub
Ethoscopy and Ethoscope-lab documentation on bookstack

Ethoscopes: An Open Platform For High-Throughput Ethomics

PLOS Biology, 19 Oct 2017; 15(10): e2003026
Ethoscopes: An Open Platform For High-Throughput Ethomics
Quentin Geissmann, Luis Garcia Rodriguez, Esteban J. Beckwith, Alice S. French, Arian R Jamasb, and Giorgio F Gilestro

We present ethoscopes, machines for high-throughput analysis of behaviour in Drosophila and other animals. Ethoscopes provide a software and hardware solution that is reproducible and easily scalable. They perform, in real-time, tracking and profiling of behaviour using a supervised machine learning algorithm; can deliver behaviourally-triggered stimuli to flies in a feedback-loop mode; are highly customisable and open source. Ethoscopes can be built easily using 3D printing technology and rely on Raspberry Pi microcomputers and Arduino boards to provide affordable and flexible hardware. All software and construction specifications are available at

Online paper on PLoS Biology

Supplementary material.

Supplementary material 1 – webGL model of the ethoscope.
Supplementary material 2 – instruction booklet for the LEGOscope.
Supplementary material 3 – instruction booklet for the PAPERscope.
Supplementary Video 1 – Introduction to the ethoscope platform.
Supplementary Video 2 – The optogenetics component of the optomotor in action.

Featured in:

Nike4All – Upload your Nike+ data to the official Nike+ website.

After a couple of days of hacking, I managed to get a way to upload the data from Nike+Ipod device to your Nikerunning account. No iTunes needed! That is quite cool considering that the Nike+ Ipod Sport kit has been out for a while (2006 according to wikipedia) and linux users had no way to sync their runs without iTunes. Until now.

Simply download the python script from here. It’s a single file and all it requires is Python (was tested with 2.5 and 2.6 – should work also with 3.0). You can place the script wherever you want. It is suggested to save the script in /usr/bin so that you can run it without typing the path everytime.

A graphical interface is also available, as Screenlet. Get it here.

First time run – pairing your data with your account.

1. If you don’t have one yet, create an account on the Nike+ website. You will be asked for an email address, password, personal details and, at the end, for a screenname. Just go throughout the entire registration. If you already have an account on the site, skip this step.

2. Make sure you are not logged in into your Nike+ account (hit logout).

3. Start nike4all issuing the following command:

gg@fly-home:$ -createAccount
Go to this URL and login whit username and password of the account you just created
Url to visit:
Press enter to continue only AFTER you login

4. After a few seconds you will be asked to visit a website: simply open that URL in your favourite browser and login using your credentials. Edit [28.02.11]: it seems Chrome may cause some troubles at this step. If it doesn’t work please use another browser; Firefox should do it.

5. After having done so, go back to the command line and hit Enter. The program will then say:
Congratulation, your status is now confirmed
The user <screenName> is now associated to the pin xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx
Your pin was successfully saved in the configuration file
To update new files connect the iPod and use the following command:
nike4all -sync

The configuration file is in your home folder and it is called
the running files you will be syncing will also be backup in the same folder
you can change the backup folder by editing the configuration file with your favorite text editor.

You should already know by now.
Other than regular syncing, you can also upload specific files. Start the program without parameters to get a help message.

Caveats and technicalia.
If you already have a Nike+ account, you can still use that one. You existing data will not be lost but you may experiencing problems syncing with iTunes again in the future because your PIN was changed. Your iTunes PIN is stored on your iPod, encrypted (probably with AES CBC 128 bit) in a plist file. Maintaining the same PIN for iTunes and nike4all would require finding that password.

Please, do not use the nikerunning website with any other device that is not an iPod or a sportband. The nikerunning website is a service for Nike customer only and nike4all shall be seen as a tool that allow linux users to use this wonderful service.

License and Credits.
As usual, thanks to python and thank to Ubuntu. Nike4all was developed using only free software and it is released under GPL. If you like the software, please consider donating using the button on the right side – money will go into a research fund (the Institute of garage science).

Bugs and history.
If you find a bug, please drop me an email.
08/15/2009 – first release v0.1

Update (July/2010)

Masatoshi Kanzaki has published a similar tool to upload Nike+ Sport band data from linux! Get it on his blog.

Update (October/2010)
I uploaded the sourcecode on googlecode. Feel free to contribute or fork.

Videocapture for linux

If you did some hacking with a webcam and python, you probably ended up using the Videocapture module by Markus Gritsch. Unfortunately, the module does not work on any operative system other than windows, which could be a problem if you wish to make your application platform independent. So, here you will find a linux version of Videocapture. It has been tested on ubuntu distributions. It will run as long as you have installed

  • python 2.5 (maybe others too)
  • PIL – the python imaging library
  • opencv

You can download it here. Some functions are actually not active (namely those that would call the configuration panels). It should work on mac too. Please, if you try it on a mac, let me know how it went.



If you are a Linux user you probably already know and appreciate that (amazingly) simple piece of software that is googlizer. If you don’t know what I am talking about: googlizer is a tiny gnome applet that sits in your taskbar; everytime you click on it, it will start a google search using the text in your clipboard as query. Just select the text using your mouse to copy it in the clipboard, then click on the G icon of googlizer and voila, your google search is already waiting for you in your favorite browser.

Being myself a ubuntu user I love the googlizer but sometimes I need to work on computers running windows OSs. I decided to invest 20 minutes of my time (while waiting the confocal to do its work) to make a windows clone of Googlizer.

You can dowload it from here (it’s free, as in free beer of course). To completely emulate X copy&paste functions you may want to consider using True X-Mouse Gizmo as well.
Is written in Python then compiled to exe using py2exe and the installer is build using Inno Setup. In case you are interested in the source, here you’ll find the python code for wingooglizer, the py2exe setup file and the iss inno script.

WinGooglizer works fine on windows xp, sp3. I guess it will work on any Windows OS. Enjoy and let me know how it works for you.

pySolo: a complete suite for sleep analysis in Drosophila

Bioinformatics. 2009 Jun 1; 25: 1466-1467
pySolo: a complete suite for sleep analysis in Drosophila
Giorgio F. Gilestro, Chiara Cirelli

pySolo is a multi-platform software for analysis of sleep and locomotor activity in Drosophila melanogaster. pySolo provides a user-friendly graphic interface and it has been developed with the specific aim of being accessible, portable, fast and easily expandable through an intuitive plug-in structure. Support for development of additional plug-ins is provided through a community website.
Availability: Software and documentation are located at pySolo is a free software and the entire project is leased under the GNU General Public License.
Go to pubmedDownload PDFlink to the website

Journal Filtered Pubmed


General Science

Cell Nature Science
Neurobiology Journals
Neuron Nature Neuroscience J. of Neuroscience
Nature reviews in Neuroscience Trends in neurosciences
Development and C.B. Journals
Development Genes and Development Current Biology
Nature Cell Biology Developmental Cell J Cell Biol.
Embo Journal J Biol Chem.
Genetics and Medicine
PLoS Genet. Nature Genetics
Immunology Journals
Immunity Blood Nature Immunology
J. of Immunology Immunology


From this page you can easily interrogate the PubMed database by restricting your queries to only certain journals. This feature is not available on the Pubmed site. Check the box next to the group category to include all the journals belonging to that category or select the journals one by one.
The list is currently restricted but it will grow and eventually it will be possible to customize it with per user settings. This page requires javascript and it has been tested on Firefox and Internet Explorer. Please let me know if you encounter problems with it or just drop me a line if you want me to include new categories and new journals.   

Free unmissable Windows software that will make your computer life easier.

Whatever your job, there is a good chance you’ll spend lots of time sitting in front of a computer. If you do lots of data analysis, as I do lately, then you’ll find yourself in front of the monitor for most of the day. I’ll use this and the following few posts to introduce some softwares that are going to dramatically improve your productivity – and make your digital life easier. Web is full of list with dozens of best freeware software so I have no intention of making just another one; rather I will suggest one software per category. If you know of something better feel free to leave a comment to this post. I’ll start with this post with some more general softwares, useful to anyone. In the next one I will talk of more scientific-oriented softwares.

Fancy Pull-quotes (v0.85)

Simply download the plugin, unzip it and copy the php file in the plugin directory of your wordpress installation. Then activate it from the admin panel and you are ready to go. The plugin is fully customizable from a page in the admin control panel.Note: if you are upgrading the plugin from an older version I recommend to first click the “restore all options to default” link.

How to use.
Simply surround the text that you want to see as pull-quote by the following tags: <!--pull--> and <!--/pull-->. The plugin will automatically scan your post for the text included with these tags and treat it as pull-quotes. Getting those nice effects is as easy as that! If you don’t like the tags as they are or if you want to change the look of the pulled quote, you can do it from the control page in the admin panel of wordpress. The quote is formatted using a CSS definition: if you are an advanced user (i.e. if you know a bit of CSS) you can hack the CSS style in every part.

Detailed instruction.

Open and Close tags: you can define which tag to be used as markers for the pulled quote. Default are <!–pull–> and <!–/pull–>. These tags are transparent by default meaning that if you check the “Mirror quote” option you can activate or inactivate the plugin at any time without changing the layout of your posts.

Background Color: Choose background color. Use same color as your normal background to make it transparent.

Text Color: Choose text color. You can use hexadecimal values (for instance: #0AFF44)

Max Width: specifies the maximal width allowed

Pullquote position: pullquote position in the page (left or right)

Border color, size, style: define border properties

Mirror quote: leave unchecked if you want to use a quote that won’t show in the text of your post (for instance: if you want to have the pullquote to appear at the very top of your post you can uncheck the “mirror quote” checkbox and insert the pulled quoted as first thing in your wordpress post)

Current version of the plugin is 0.85, released on 4.19.2007. The plugin has been tested and working WP 2.0.x and 2.1.x. If you have other experience on other versions of WP please leave a comment here and I’ll udate this paragraph.

The plug-in is released under GPL license, meaning it’s free. If you like it or if you need help feel free to leave a comment here. (did you note that I installed some ads on this page? maybe you can find a couple of minute to check if there is anything interesting to you…)
Take a look also to my other plugin, Alt-to-Legend.


Alt to Legend (v0.50)

This is a neat Plugin!Installation.
Simply download the plugin, unzip it and copy the php file in the plugin directory of your wordpress installation. Then activate it from the admin panel. You can customize the behavior of Alt-2-Legend from a new panel that will appear under the ‘Option’ page in the admin panel.

How to use.
Once your plugin is installed, it is ready to use. Simply insert an image in your post as you normally do and provide a description in the title textbox of the popup window. The text specified in the alt field or title field (your choice) will appear under the image. You can then decide the relative position of the images in the posts under the option page in the admin panel. Image can float always left, always right or according to the align parameter (meaning different post by post if you wish so).

Current version of the plugin is 0.5, released on 5.10.2009. The plugin has been tested only on WP 2.7.1. If you have other experience on other versions of WP please leave a comment here.

The plug-in is released under GPL license, meaning it’s free. If you like it or if you need help feel free to leave a comment here – and hopefully I will get some monetary feedback from the people who will find interesting ads to click on.

-First release

-Add a preview pane in the admin panel
-Add a easy-update link in the admin panel
-Set the width of the box sourrounding the image as big as the image itself

-Fixed the ‘use no border’ bug
-Use local/relative URI for images hosted on localserver (solves error:
getimagesize(): URL file-access is disabled in the server configuration )
-Image can float constantly left, constantly right or left/right according to the align parameter

-Fixed several bugs
-Add the padding and margin settings to adjust border of the image

-Works with an unlimited number of images -Image box will fit also when image is resized using the width parameter

-Will work only if image tag contains the magic word “alt2legend”.
E.g.:<img src="image.jpg" alt="This is a caption" alt2legend />
Also, included in wordpress plugin repository.
Take a look also to my other plugin, fancy-pullquotes.