Airbus vs Boeing fleet profile in a day

Profile of Airbus fleet on flight using the data corresponding to the day 16th of January 2017 (downloaded from ADBSexchange).

The source data is 1.440 JSON files of all aircraft on flight i.e. a file for every 60 seconds. The time scale starts in the hour 0Z i.e. 0:00 UTC

Airbus fleet profile

Similar profile of Boeing fleet

Boeing fleet profile

Comparison between A320 and B737

A320 vs B737 profile

The Python source code used to perform the analysis can be found in this github repository.

LinkedIn to CSV chrome extension

LinkedIn to CSV

Note: the Chrome extension is no longer available, it has been taken out from the store due to a claim from LinkedIn. They’re happy to profit from other’s people data but it seems they don’t like others being able to use it.

Source code in Github is here.

A simple Chrome extension that allows saving people key data into CSV. Not a lot of functionality but not too bad for a Sunday afternoon 🙂

Whenever you visit a profile in LinkedIn this Chrome extension will show a button which will allow downloading the basic information (full name, title, location and industry) to a CSV file.

Weekist – simple report generation from Todoist tasks

Hi everybody, the second version of Weekist ( is here. This new version allows to generate reports for the tasks you have accomplished during the week, month or for a custom date range.


In order to login in Weekist just use your Todoist login and password, that information will not stored in Weekist, we don’t need it because we validate the login against Todoist server (it Todoist server is down Weekist will not work).

Please note that the first time you login it will take some time to retrieve the completed tasks, once that process is finish the generation of the reports should be quite fast.

There are some new features that will allow you to customize your reports filtering labels and projects. Also you will be able to include the notes associated to a task. You can also print (or save as PDF) or send the report by e-mail to your Todoist email address.

Enjoy, and if you have questions, comments or improvements please send me an e-mail to

IMPORTANT: project has been discontinued. Source code has been released here

Implement task duration in @Todoist (workaround with @IFTTT)

Todoist is a great todo list and integrates with other applications such as Google Calendar or Sunrise in such a way that you can see your tasks in this wonderful calendar application.

Unfortunately, Todoist doesn’t yet support defining the duration of the tasks, so by default every task is shown as 1 hour duration. This is obviously less than ideal if you want to plan your day properly.

In order to overcome this problem I’ve found a workaround using IFTTT and Google Calendar. In my setup I link Google Calendar to Sunrise, my favorite calendar app (you can integrate Google Calendar with many other apps).


  1. Create a new recipe in IFTTT so that whenever you create a new task then an event is created in your Google Calendar. In my case I have modified this recipe, only the tasks created with the label @s! appear in my calendar.

The full recipe is shown below:

QuickaddeventIn order to simplify the process you can use this recipe and modify as you wish.

  1. Add your tasks to Todoist using Google Calendar quick event format. It’s quite simple and intuitive. E.g. @s! Study Anki flashcards for 30 minutes today at 12:00

  2. This will trigger IFTTT to create a new event in my Google Calendar, showing the specified duration of the task (instead of the default 1 hour). It will also include a link back to the original Todoist task so when I have completed I can mark it off in Todoist very easily. This is how it looks like in Google Calendar and Sunrise

Event in Google Calendar
Event in Google Calendar




Sunrise capture
Event in Sunrise



As you can see it’s pretty easy and it just works fine as workaround until the task duration functionality is implemented in Todoist. If you have any question please leave a comment below.



Collect your 2015 achievements automatically with Todoist & IFTTT

When I was looking back at what have been my main achievements last year 2014 I realized that it is not that easy to remember everything and that it requires a fair amount of time to do it properly, especially when you want to go into the details e.g. what books did I read last year?

In order to simplify the exercise this year I decided to automate at least the collecting part using Todoist and IFTTT (I will still need to do the analysis of what went ok and what I can improve).

Option A: if you don’t have Todoist Premium
  • Start using my basic recipe here
  • Select the project you want to watch for tasks completion (“Project to watch”). e.g. Books
  • Select the project where you want to create the report of achievements (“Which project?), e.g. Achievements 2015
  • Inside the projects Achievements 2015 IFTTT will automatically create the “completed” tasks formated as: * {{CompletedAt}} · {{Project}}: {{TaskContent}}
    e.g. January 02, 2014 at 09:17PM · Books: How to fail at almost everything and still win big (Scott Adams)
Option B: if you have Todoist Premium
  • If you have Todoist Premium then you can use labels and simplify the above process
  • First, decide which label you will use for the tasks which you want to include in your Achievements log e.g. @t!
  • Create a new recipe in IFTTT as follows:
    1. Trigger: New completed task with label t! in Any Project
    2. Action: Create a new task in Achievements 2015 formatted as in the previous option * {{CompletedAt}} · {{Project}}: {{TaskContent}}
  • You can see the full recipe below


  • This recipe will allow to monitor all your projects and record every completed milestones (in my case marked with @t!) inside the Achievements 2015 project

I hope this is useful for you. If you have any questions or suggestions please leave a comment below.

Technical Analysis vs. Fundamental Analysis

descarga (31)Technical analysis uses charts, showing stock movements (prices & volumes), as a tool to predict how stock prices will evolve in the future. Chartists believe that the market is only 10% logical and 90% psychological.

images (72)

Fundamental analysis seek to determine a firm intrinsic value based on its expected growth rate, dividend payout, interest rates and risks. Fundamental analysts believe that market is 90% logical and 10% psychological.

Technical Analysis

Two main principles:

  1. All information about earnings, dividends and future performance of a company is already reflected in company’s past stock prices.
  2. Prices tend to move in trends, and trends tend to continue until something happens to change the supply-demand balance e.g. if a stock is rising it will continue rising. The prices at what the trend is about to change are called resistance levels.

Fundamental Analysis

Fundamentalist’s primary concern is what a stock is really worth, which is based on the estimation of four key determinants: growth rate, dividend payout, degree of risk, and the level of market interest rates.

Using Fundamental and Technical Analysis together

  1. Buy only companies that are expected to have above-average earning growth for five or more years.
  2. Never pay more for a stock than its firm foundation of value
  3. Look for stocks whose stories of anticipated growth are the kind on which investors can build castles in the air

Further reading

Holistic Learning

What is it?

lmslIt is learning method based on the interconnection of concepts. The idea is to make a link between the new concepts being learned and already known concepts / ideas.

How do you apply it?

The main goal is to build new knowledge starting from models. In order to create the models three methods are applied:

  1. Visceralize: represent and summarize the model using all your senses so you can associate the concept with something you can see, taste, smell, etc. This simplified “image” is easier to remember.

    Ask yourself what the concept would look, sound, feel like.

  2. Create Metaphors: to interlink ideas you uses similes i.e. relate the new idea with another one which is similar in some way

    Think about what reminds you the new concept / idea.

  3. Explore: go through your models and polish them removing errors and wrong connections between ideas. Complete also the holes and missing pieces of information.

    Use your network of concepts to validate its accuracy through problem solving

Further reading

Holistic Learning E-book (free)

The firm-foundation investing theory

Each investment instrument has an intrinsic value which can be determined by careful analysis of present conditions and future prospects. Investing is then just a matter of buy or sell decisions comparing actual price with its firm foundation value.

From the point of view of the very-long term investor, the worth a share is the present or discounted value of all future dividends he will receive from owning the stock.

Four fundamental determinants affecting value of shares

Determinant 1: expected growth rate

A rational investor should be willing to pay a higher price for a share:

  • the larger the growth rate of dividends, and
  • the longer the extraordinary growth rate is expected to last.

Determinant 2: expected dividend payout

A rational investor should be willing to pay a higher price for a share, other things being equal, the larger the proportion of a company’s earnings that is paid out in cash dividends.

Determinant 3: degree of risk

A rational investor should be willing to pay a higher price for a share, other things being equal, the less risky the company’s stock.

Determinant 4: the level of market interest rates

A rational investors should be willing to pay a higher price for a share, other things being equal, the less risky the company’s stock.

Three caveats

  1. Expectations about future cannot be proven in the present, therefore, prediction of future earnings and dividends implies always a dose of uncertainty.
  2. Precise figures cannot be calculated from undetermined data (the information used to make the calculations is based on estimates).
  3. The fundamental determinants are liable to change depending on market psychology (stocks are bought on expectations, not facts).

Further reading