Thursday, May 12, 2016

PyData write-up

This last weekend I went to my third PyData, the one in London, and it's been such a great experience.

Before, I went to PyData Amsterdam, and PyData Madrid, also this year.

After the three conferences, which were very similar, but quite different at the same time, I just wanted to share what I liked, and what in my opinion could be improved. I hope future organizers can find some useful information from my ideas and thought. And that includes my future self, for when I'm an organizer.

Organization

I wasn't involved that much in the organization, but my believe is that more should be delegated. I couldn't see it that much in Amsterdam, but organizers of both Madrid and London looked extremely exhausted at the end of the conference. May be I'm too optimistic, but I'd say that more people would like to help. I think a good idea is probably to find volunteers for specific tasks. For example, probably some people would be happy to help in the registration. And organizers would have more time for other things, and to rest.

Event hosts

I think in the three conferences there were amazing hosts (the people who gave the welcome speeches, closing notes...). Vincent and the Italian guy (sorry for not remembering your name if you read this) in Amsterdam,Guillem in Madrid, and Ian and Emlyn in London. I think the whole conference makes a difference having hosts with great humour and communication skills.
Communication

I think communication is quite important during the conference. In Madrid was great (and somehow easy), because it was only a single track, so organizers could provide any information between talks to all attendees (where the beers will be, to remind people to sign up for lightning talks...). In Amsterdam with 2 tracks they managed it very well.

In London, I think the communication could be better. With 4 tracks it gets much more challenging, but I think just a bit more of communication was needed, like reminding about the lightning talks, reminding about the tweeted photos contest...

I personally didn't like that much slack (was my first time using it). The mobile version (the web, not the app) is not very intuitive, and I had problems to find the channels. I prefer twitter to be honest.

Networking

I met really great people at all conferences. I don't think other industries have the great community as PyData (and also Python) does. I didn't see anyone trying to sell their product, but it was more about sharing, and getting to know what others do. I really like that.

I'm not sure if it's just my perception, but I think in London the breaks (breakfast, lunch...) were much shorter. I think London was the conference with a higher number of proposals among the 3, so they tried to accommodate the maximum number of talks, but I personally would prefer to have more time for networking, even if that means few less talks.

Keynotes

Good keynotes in general. Of course no every PyData is lucky enough to have a keynote from Travis Oliphant, or WesMcKinney, but the level was quite good.

There were just a couple of things I couldn't understand (neither the people I talked to about):

  • In Madrid, Jaime (a numpy core developer) talk had to be a keynote. Even if there were already too of high level Christine and Francesc, I think people need to know that a talk from Jaime (an amazing one btw), is not the same as the one I did.
  • In London, the opposite, I couldn't see why Tetiana talk was a keynote. I won't say that the talk was bad, it was all right, but not at the level of Travis or Andreas for sure, and IMO it had to be a normal talk, and there had to be other talks at the same time as her talk
Talks

Very good level. Of course there are some talks better than others, but in general I was quite happy with most of them.

As they are (or will be) in youtube, here you have the ones I liked more:

Lighning talks

To me, lightning talks are probably the best of a conference. I really like that in Madrid they had lightning talks both on Saturday and Sunday.

And for me, it was a mistake to have the lightning talks on Sunday both in Amsterdam and London. First, because people from abroad usually have to miss the end of the conference. And also, because it's great for networking to see all the lightning talks on Saturday, and be able to talk to the speakers on Sunday if you share the same interest.

So, IMO, at the end of both days is the best, on Saturday if just one of the days.

Unconference presentations

This is very biased by my personal experience, but I think the unconference presentation format was a failure. For what I could see it worked well for the workshop Vincent gave, because he was one of the speakers, and could tell about his workshop to a large audience. But for the rest, I don't think the majority of the attendees knew about that was in that slot.

To my talk about machine learning for digital advertising, just 4 people attended. I want to believe, that if the title of the presentation was on the schedule, many more people would have attended. So, in my opinion, if unconference presentations are present in future conferences, the online schedule should be updated, and a (big) board with what is going on in that track, should be present.

Food

Comparing the three conferences, I think the food was much better in Amsterdam than in Madrid or London. In Madrid they got special meals for people who requested them (vegetarian, allergies...), I don't know in the other conferences. It's difficult to say if it's better to spend more money in better food, of course people like better food, but also cheaper tickets, and higher contributions to free software projects.

What I could see is that more people decided to go to restaurants in Madrid and London than in Amsterdam. Ok, in Amsterdam there weren't any restaurants around, but I think better food is better for networking. The best is probably to find a good sponsor that pays for nice food, but that looks tricky. So, I think all options are all right.

Conclusion

The whole experince of PyData 2016 it's been amazing. Exhausting (specially the ones I had to take flights to go), but amazing, and really worth.

The organizers have done an amazing job, the local communities, and for what I could see and hear, the ones from NumFOCUS.

Now I have a beautiful laptop full of stickers, and several PyData T-shirts.

There are few minor things that in my opinion could be improved, to make the conference even better:

  • More time for networking
  • More communication from the organizers (telling all the time what is going on, sign up for lightning talks, unconferences, problems with the wifi, beers planed, community announcements, and even the smaller things)
  • More lightning talks
  • Labelling as keynotes the talks that really make a difference
Thank you very much to all the people that made them possible, and see you again there next year!

Wednesday, December 23, 2015

After Fedora installation tasks

What do I do after installing Fedora 23 MATE-Compiz?

  • Install Google Chrome
  • Merge both panels to the bottom, and auto-hide it
  • Change mouse setup to allow touchpad click and double finger scroll
  • Change look and feel setup to select window when the mouse moves over it
  • Disable screensaver
  • Change terminal shortcuts
  • sudo dnf update
  • sudo dnf groupinstall "Development Tools"
  • sudo rpm -ivh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm
  • sudo dnf install vim-enhanced git vlc gimp inkscape unzip
  • Install Anaconda
  • Copy my settings files: .vimrc .gitconfig .ssh
  • Add aliases to .bashrc:
    • alias vi="vim"
    • alias rgrep="grep -R"
  • In Power Management, set up the computer to blank screen when laptop lid is closed

Tuesday, December 22, 2015

Jupyter environment setup

This is a short note about how I set up my "data scientist" environment. Different people have different tastes, but what I use, and what I set up is:

  • conda for environment and package management (equivalent to virtualenv and pip to say)
  • Latest Python (yes, Python 3)
  • Jupyter (aka IPython notebook)
  • Disable all the autocomplete quotes and brackets stuff, that comes by default with Jupyter
  • Set the IPython backend for matplotlib
So, we download Anaconda from: https://www.continuum.io/downloads (Linux 64 bits, Python 3, in my case). We install it by:

bash Anaconda3-2.4.1-Linux-x86_64.sh

We can either restart the terminal, or type the next command, so we start using conda environment:

. ~/.bashrc

We can update conda and all packages:

conda update conda && conda update --all

Then we create a new conda environment (this way we can change package versions without affecting the main conda packages). We name it myenv and specify the packages we want (numpy, pandas...).

conda create --name myenv jupyter numpy scipy pandas matplotlib scikit-learn bokeh

We activate the new environment:

source activate myenv

Now we have everything we wanted installed, let's change the configuration.

We start by creating a default ipython profile.

ipython profile create

Then we edit the file ~/.ipython/profile_default/ipython_kernel_config.py and we add the next lines to make matplotlib display the images with the inline backend, and with a decent size:

c.InteractiveShellApp.matplotlib = 'inline' c.InlineBackend.rc = {'font.size': 10, 'figure.figsize': (18., 9.), 'figure.facecolor': 'white', 'savefig.dpi': 72, 'figure.subplot.bottom': 0.125, 'figure.edgecolor': 'white'}


Then we create the file ~/.jupyter/custom/custom.js and we add the next code to it, so we disable autoclosing brackets:


require(['notebook/js/codecell'], function (codecell) {
  codecell.CodeCell.options_default.cm_config.autoCloseBrackets = false;
})


Monday, January 19, 2015

Google Earth on Fedora

Installing Google Earth in Fedora is trickier than it should. Here is a short HOWTO:

  • Download 64bits Fedora version from Google Earth site
  • sudo yum install google-earth-stable_current_x86_64.rpm
  • OOOPS!!! You got file /usr/bin from install of google-earth-stable-7.1.2.2041-0.x86_64 conflicts with file from package filesystem-3.2-28.fc21.x86_64

rpm has an error, we need to fix it. We'll rebuild the rpm fixing the error with rpmrebuild

  • sudo yum install rpmrebuild
  • rpmrebuild -ep google-earth-stable_current_x86_64.rpm
  • A text editor with the spec file (rpm configuration file) is opened, you need to delete the line %dir %attr(0755, root, root) "/usr/bin"
  • rpmrebuild will ask for confirmation and inform about the path of the generated rpm, just install it
  • sudo yum localinstall ~/rpmbuild/RPMS/x86_64/google-earth-stable-7.1.2.2041-0.x86_64.rpm

Now, the application is succesfully installed, but sometimes crashes when started. It looks like the best to it is to install the 32 bits verion, or Google Earth 6 (latest is 7 at the time of writing this post). Unless you need any specific feature from version 7 I recommend installing version 6 rather than the 32 bits version of 7. The latter requires many dependencies, and it's still buggy on Fedora.

More info:

Sunday, January 18, 2015

Skype on Fedora 21

Here there is a blog post on how to install Skype on Fedora 21 by quickly creating an RPM package.

http://mariuszs.github.io/blog/2014/skype_for_fedora_21.html

It's also a great simplified tutorial on how to build any RPM.

Tuesday, December 2, 2014

LATEX awesomeness

I think LATEX is simply amazing by itself. More when writing an academic document, but for any kind of doc, using LATEX is really time and pain saving.

The concept of creating a document class (defining all the styles of the document), and then simply forgetting on formats, and focusing on content is just amazing. Also the automatic management of references (bibliography), the automatic management of figure and table labels, and and the automatic creation of the table of contents. Not to mention how nice is creating formulas.

But besides LATEX itself, what I found really cool is www.sharelatex.com. I've been using it for a while, and after discovering some new features (new for me, not sure how long they've been there), I found it was the perfect editor for LATEX.

First advantage is the cloud usual stuff, no local installation needed, backups are managed by the service provider, accessible from different devices...

But there are some other specific to the site:

  • Collaborative environment: see what others are writing in real time, conflict avoidance, always up-to-date, and even author chat
  • Version control system: Don't loose any version, history of changes is kept.
  • Ownership of your project: download a zip of all your files, sync to Dropbox, and also to Github (beta).
  • Extra features:
    • Spell check
    • Autocomplete
    • And last but not least: VIM keybindings!!!
Few of the features are for premium accounts only (+10 collaborators, Dropbox sync, full history access), but the free plan I'm using is exactly what I need so far.

Tuesday, July 10, 2012

Brother printer on GNU/Linux

For some reason, brother printers (at least mine) do not take into account the settings specified for the printer in the regular way (Gnome settings in my case).

But mysteriously, there is a command which can be used to change them properly (brprintconf_mfc235c). In my case, I was having problems with top margin, and top of pages was not printed. Apparently it was because of page type, so I could fix it by:

sudo brprintconf_mfc235c -pt A4