Category: Personal

Personal stuff and others that are not technical, doesn’t have source code, etc.

  • If I say to you “let’s meet in a month” you probably won’t know exactly when we are meeting again. It’s an approximation at best. Do I mean 30 days? do I mean the exact same day number but on the next month? What if that month doesn’t have that day, like February 30th? What if we are in a business setting and 30-days-later or same-number-of-the-month falls on a Saturday? As you see, months, as a measure of time, can be pretty useless. Specially when talking about small numbers, like 1 or 2.

    There’s a better unit. The week. How long is the week? 7 days. All weeks are 7 days, no exceptions. If I say “‘let’s meet in a week” you know what I mean. Add seven days to today and that’s when we are meeting. If it’s a Monday, in a week, it’s also a Monday. Also, weeks are smaller, more granular, which is useful for little projects. If I ask “When is X is going to be done?” I’d rather hear it expressed in weeks rather than months.

    We normally use months because they allow us to set up a time in the year. We can say “July” and know when it’s that. Weeks can do that too actually.

    Did you know that the weeks of the year are numbered? It is call “ISO week date” where ISO stands for International Organization for Standardization. Since a year doesn’t start on the same day of the week every year and also has variable numbers of days, years may have 52 or 53 weeks. This allows to say week 5 or week 30 and refer to a specific week of the year. There’s even a format: 2015-W5-1. That referees to Monday of week 5 of 2015.

    If you are using Google calendar, you can add the week numbers to it following this procedure:

    1. Click on “Other calendars”
    2. Click on “Browse Interesting Calendars”
      Using Week Numbers in Google Calendar - Browse Interesting Calendars
    3. Click on “More”
      Using Week Numbers in Google Calendar - More
    4. Next to “Week Numbers” click on “Subscribe”

    From now on, in your week view, you’ll see a small rectangle with the week number, in this case, week 6:

    Using Week Numbers in Google Calendar - Week 6

    It also appears on your list of other calendars, so you can change the color and enable or disable it:

    Using Week Numbers in Google Calendar - Other calendars

    The most organized businesses I came in contact with, made extensive use of calendar numbers and I intend on doing the same and recommend it to other people. I think the first obstacle to overcome is making the number ubiquitous so that when you use it, saying “week 6” for example, people know intuitively what you are talking about.

    Let’s do it.

    Picture by Yandle.

  • Yesterday, the web celebrated its 25th birthday and to join in, I have a little story. A couple of years ago I found a NeXTcube. I’m not going to say where it is to avoid vandalism (the computer is publicly accessible under some circumstances without much oversight), but this is the story. Sir Tim Berners-Lee coded the earliest version of the web in his NeXTcube workstation when he was working at CERN, so, I was always interested in this machines, from a historical/playful point of view.

    The cube that was in front of me was more or less abandoned and I asked the owner if I could play with it. He was very reticent but I was more relentless and I got to play with it. He told me that Next computer belonged, at one point, to CERN and that it has not been used since then. I decided to explore it.

    The first interesting thing I found was a file containing a lot of email addresses from people that seemed to work at CERN or be related to CERN in some form or fashion. The owner of the computer decided to be overly professional and deleted the file.

    The second interesting thing I found completely blew my mind. There was a folder called WorldWideWeb and inside it several files called WorldWideWeb_0.1.0.tar, 0.1.1.tar, 0.2.0.tar and so on. Could this be? I opened one by one and indeed they were apps. I started with the oldest and executed them one by one.

    The first one raised an error as it tried to contact cernvax.cern.ch (this Next cube was disconnected) and then it crashed:

    WorldWideWeb_0.1.0

    I kept on going and eventually one started. It was very plain but I knew what it was. I quickly went back to my terminal, open vi, and wrote a small HTML file, which then I passed as a parameter to the little WorldWideWeb_0.2. It worked… it displayed an h1 as a title!

    I was jumping out of my skin. I don’t want to publish the whole picture to avoid releasing private information, but I’m standing, next to the cube, pointing and what could possible be the earliest version of the web browser that still works today, displaying a web site I just coded (it says Hello World):

    WorldWideWeb_0.2

    Then I discovered the browser allowed me to edit the page, directly there, without having to do anything special, and I remembered that Sir Tim Berners-Lee originally designed the web to be read-write, not read-only.

    That was one of the most exciting moments of my life. When I got home I wrote an email to Sir Tim Berners-Lee, telling him of my finding and where he could find that computer, just in case he wanted to get ahold of those binaries (I couldn’t find any source code anywhere on that machine). He never replied, I don’t know if he ever got my email. I bet he gets a lot of it and that he’s a very busy man.

    Update: explained a bit why I don’t want to reveal where this happened.

  • This post is about a better way of creating good habits in your life. I’m going to start with my desire to have the habit of working out. The lessons here can be applied to everything and I’m going to show you some more examples at the end.

    I could track my physical exercise to make sure I keep up. I could use an app like Google Fit. The first day I meet my goal, but eventually, my days will look something like this:

    Google FitI already have two missed goals. It’s very easy to get discouraged by missing a goal one day, or a few days in a row, and then drop out of the plan to improve fitness. This is a very bad way of creating new habits.

    The problem with this, as with recurring to-do items is that the granularity is too low: a day. Google fit is telling me I failed two days out of four and not counting than on those two other days I made up for it. If Google fit was measuring activity in four days intervals that would have been a success, instead of a half success.

    But four days might be too short too. A long weekend and boom! You are out! Maybe we should go for a week or even a month. A month is a nice chunk of time, but it has another problem: it’s so big, you might not know you are actually failing until you are too close to the end to fix it. And even if you fix it, working out like mad on the lat 4 days of every month is not healthy or habit forming.

    What we need is something that won’t punish us for a day of rest, but will still keep pushing us up every day. That is Beeminder. Look at my working out chart:

    Beeminder chart for working out

    Beeminder legend

    The pink line with green dots are my data points, the information about when and how much I worked out. It is measured in Fitocracy points, but it could be time working out, kilometers run, kilocalories burnt or anything else you want.

    The yellow brick road is my goal. I want to always be above it. The yellow brick road keeps going up every day, so I need to keep on working out to reach my goal. Crossing it is called derailment and you can see it actually happened around mid October. When you cross it, the system resets, gives you a week of advantage and then re-starts. What happened around mid October is that I had a trip, but that’s not excuse. You see… if you allow things like a trip to be an excuse, it’s easy to lose a good habit.

    How do you deal with eventualities then? You build up a buffer. Towards the end of November, for example, I did that. Unfortunately then I got a cold and that ate most of my buffer right away, but I’m going up again, building a buffer and staying on the good side of the yellow brick road.

    The beauty of this system is that it doesn’t judge a single day, it judges your progress, but it keeps reminding you that you should be making progress.

    Another advantage of Beeminder is keeping up with good habits without a routine. If you ask most gym-goes when they go to gym, they have a routine: Monday and Wednesdays! or something like that. I have preferred days, but I don’t have a strict routine, my life just doesn’t allow it, it’s too chaotic. When you don’t have a strict routine it’s very easy to forget to go to the gym because our brains are very bad at correctly keeping track of how much we worked out this week.

    You may have noticed the big two numbers on the background of the chart. 10d means 10 days, and that’s how big the buffer is. I could sit on my ass for 10 days and not derail. But then I would be in a very precarious situation in which any eventuality will cause me to derail. I don’t want that to happen, so, I’ll attempt to keep my buffer at 10 days or more. Which leads me to the second number.

    $5 is how much derailing will cost me. Those are real dollars, the ones you have to work for. Talk about an incentive! That’s Beeminder’s business model, that’s how they sustain themselves. And it’s a beautiful system because it only hurts when you do something bad, and that penalty is what makes the system work, so you are paying Beeminder only for doing its job. If you never fail, it’s free.

    And each time it fails, the amount will go up, so, further failures will be more expensive. I been tinkering with my workouts recently, trying to find the right amount to do every week, so I keep reseting the amount to $5, but once things are stable, I’ll let it go up.

    Another thing that I’m doing for my fitness and health is meal tracking. Meal tracking also has this insidious property of an all or nothing system. I started tracking them and one day I forgot. The next day I didn’t forget, but since the data was corrupt already, more corruption wouldn’t be that bad (broken window syndrome?) and the day after that I completely forgot I was doing meal tracking.

    I’m still not sure if incomplete meal tracking data is useful or not, but I know the all-or-nothing situation is not conducive to forming habits. Enter Beeminder! First I tried entering how many meals a week I was tracking, but that allowed every day to be corrupt. It’s easy to track meals, it’s harder to track snacks. Allowing every day to be corrupt means you can just track meals, ignore snacks and be successful in the eyes of Beeminder.

    Right now I’m experimenting with forcing myself to track 2 days a week, and I’m doing well:

     

    Beeminder for meal tracking

    That’s where the angle of the yellow brick line comes from. In that chart is 2 per week. If I continue to do well, I’ll keep increasing it, possibly up to 5 or 6.

    These are just a couple of examples of what I’m tracking right now. Beeminder comes ready packages with many settings for different tasks and they keep adding them. Take a look at the screen for creating a new goal to have an idea:

    Beeminder create goal

    Beeminder is not that easy to use. It’s a power-tool, but I really recommend it. Whenever you want to have a new habit in your life, that’s the way to go.

  • First panel of the comic about life and death
    First panel of the comic about life and death

    I recently saw a comic about life and death and it bothered me. The comic shows life and death as two equal figures interacting and I think that’s incorrect. It feels like a false dichotomy. They are not both sides of the same coin. Life is the face of the coin, while death is the side of the coin. Death is limiting life, and the farther away it is, the more life we have.

    The reason why I think this is important is because I people over value death. They say things like “we can’t have life without death”. For me, that’s like saying “We can’t have nice things without also having nice broken things later”. It’s true that a nice broken thing is a byproduct of a nice thing, but it’s not essential for its existence. A nice thing that lasts forever is awesome.

    I think this is mostly bullshit that people make up to be at peace with the prospect of dying. It’s as much bullshit as the after-life or reincarnation, it’s just a non-religious non-spiritual one.

    The big social implication about this is that it ostracises life extension. People enjoy living until they are 80 even though that would have been rare a few of centuries ago, but when people dream of extending it to 800, that’s wrong.

    For example, I can’t believe that more people are not signing up for Alcor or the Cryonics Institute, something that thanks to the trick they play with life insurance is affordable by many, many people. When the OpenWorm project run a Kickstarter it clearly stayed away from the implications of life extension by brain emulation. The only reason why I gave them the biggest donation I ever gave to a anyone is because a friend explained it to me well before the Kickstarter. Actually, if they would have just asked me for money I would have said yes, their campaign made me hesitate.

    I leave you with an interesting old TED talk about life extension:

  • Stop reading if you haven’t seen the movie yet, as obviously this will be a big spoiler.

    I think Star Trek into Darkness should have ended with Kirk dead. I don’t care if they revive them in the next one, that’s fine. A friend told me:

    I didn’t even realize that Kirk was dying, they wouldn’t kill him, it was just a small setback.

    I think story tellers should be bolder and surprise us more.

    I think they should have shown McCoy doing something with the body that can be later, in another movie, revealed as putting it in stasis. I think Spock shouldn’t have chased Kahn and have a fist fight. He should have been busy making sure the good of the many outweigh the revenge of the one by saving the Enterprise and making sure his crew was out of danger.

    Hold on Pablo… you mean you want to end a movie with one of the main characters dead?

    Yes, that would have been brave, although not new. Someone did it before and it might be familiar:

    What about Kahn?

    He should have run away. That’s it. Hold on… even better… he should have fled with his crippled ship.

    But then… the bad guy won?

    Yes. It would have been brave and it would have built a lot of tension and expectations for the next movie. Although, it wouldn’t have been the first franchise to have the bad guys win in one of their movies:

  • I read The Last Theorem by Arthur C. Clarke and Frederik Pohl and an important part of the plot is the construction of a space elevator. There, the authors explain to you what an space elevator is, how does it work, what are the challenges and even who invented them. Apparently in the 19th century some guys already dreamed (and wrote about) space elevators. I bet it was dreamed even before that, but at any rate, I invented them as well.

    Picture of scaffoldingWhen I was a kid, the house where I lived used to have scaffoldings here and there quite frequently. It was never finished. I grew up playing in scaffoldings and like some kids build a house in a tree, I built it on scaffolding. It was amazing! I loved it. Obviously I started thinking how high could I build a scaffold? With my child’s mind I saw no limit but I realized that at some point, the outer part would pull instead of push and I fantasized about a scaffold that would reach the moon. A bit more than a mere space elevator.

    In my phantasy one would climb the scaffold in a space suit, reach the top and when the moon passed by grab onto it: a small grab for a mind, a giant leap for the scaffolding industry.

  • I doubt any cinemas are going to implement this, because like airlines and banks, they seem to be very bad at making software. Nothing surprising there.

    A few months ago I was searching for a room in London. There are about 4 big sites to do that, so I posted ads on all of them, and searched on all of them. Only one provided a web application that allowed me to see whether I contacted someone already or whether I marked a flat as not-suitable. It made searching so much easier that soon I was using that and only that site. The ads weren’t better per se, but the software was.

    I like going to the movies with friends but I dread having to organize it. It’s such a pain because you have to balance the available time of each people, the timetable of the cinema, the shows in which there are still good seats, the fact that the seats might be going unavailable, and handling the money (I tend to pick the cool but expensive theaters).

    If I was in charge of a cinema, I would make a built-in Doodle. Doodle is an awesome application that helps you organize an event. You select all the desirable dates and times, invite the people, and they respond yes or no to each slot. At the end you pick one and go for it. I thought of setting up a Doodle to organize going to see The Dark Knight, but I ended just picking a date and time that was convenient for me and inviting people. It didn’t work.

    The built-in Doodle could work like this:

    1. I go to the cinemas website.
    2. I buy my ticket.
    3. I pick all the shows I can go to.
    4. Set a deadline (maybe, optional).
    5. I send the invite to all the people that might want to join me.

    Notice that I paid for my ticket before picking the date and time. I’m not sure whether that’s a good idea, I would be okay with that but maybe not everybody. What do you think?

    Then each person that I invited goes to the web site and:

    1. Look at all the dates and times I and others picked.
    2. Buy their ticket or tickets.
    3. Pick the dates and times they can.

    Once everybody is in or I’m done waiting, I pick a day and time and I get all the seats assigned together in one action (even though the action of committing to the movie was individual and asynchronous). For those that didn’t get a ticket or those that changed their mind, they get their money back and/or the option to arrange the same movie, another day, with some of the same group and/or adding other people to it.

    For the cinema it’s a revenue booster. It makes it easier for people to commit to going to the cinema. And even people than don’t manage to go one day are compeled to go another because they already paid.

    Build it with nice Facebook and Twitter integration and that’s it, you’ll be the most popular cinema in town.

  • “J. Pablo Fernández” is not my name, my name is J. Pablo Fernández, but I see the former quite often. For example, as a donor for the L5 series:

    That happens when someone takes the UTF-8 encoded version of my name and re-interprets it as Latin-1 or ASCII. Something that sadly happens very often. Programmers of the world, I know thinking about character sets and encodings make your brain hurt and that’s why you pick UTF-8 and forget about it. But otherwise, if you are handling data, you are using a character set and an encoding. You have to know and understand that. A great place to start is Joel Spolsky’s The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!).

    Oh… the first episode of L5 was awesome, go and grab it. I can’t wait for the next one.

  • In one way or another you can type Esperanto in any operating system without using the x-system (which I really dislike). Of all the operating systems and UIs I used (many!), the one that makes typing Esperanto the best is MacOSX, but you have to configure your keyboard properly first (this is for English based Qwerty keyboards, not sure how it would work with others). You want U.S. Extended:

    To type the pointy hats, you press ⌥+6 (that is, alt or option plus the letter 6) which gives you:

    and then the following letter, g, c, S, G, whatever: Ĝ

    For ŭ is the same, but you have to press ⌥+b to get the other kind of hat:

    and that’s all there’s to it.

  • Since I watched 2001: A Space Odyssey for the first time when I was 15 years old, I’ve been wanting to watch it on the big screen. Last Sunday I realized that dream.

    A little story about why that movie was so important to me. There’s a before and an after 2001 in my life. I think it was the first movie that really challenged my brain. The first movie that when the credits rolled up I asked myself “What the fuck just happened?”.

    It was recommended to me by a teacher, so I went and asked him… without the “fuck” I suppose. He told me that if I wanted to understand it, I’d have to read the book. I read the book and I understood more, but I had even more questions. So I read the next book, and the next, and the next. And by the time I had finished I was hooked into reading science fiction for the rest of my life.

    Back to the topic, context. It’s not an entertaining movie. It’s slow, it’s abstract, it’s art. But hey, even if you watch Alien it doesn’t look like entertainment, it’s slow and looks artistic. Honestly, go and watch it, you’ll see. 2001 was released before Armstrong put a foot on the moon, in 1968.

    Let me put that in context for you. Star Wars wouldn’t come out for another 9 years. Star Trek was on it’s second season and not many people were paying attention, yet. I bet for most people, 2001 was the first time in their lives when they saw outer space in the big screen.

    But 2001 isn’t just another silly space opera (of which the space age was probably full of). In 2001, space is silent, like it really is. How important is that? I watched Firefly just because space was silent. That important.

    2001 doesn’t have some magic solution for artificial gravity, like almost all other movies and TV shows. We have huge revolving space stations as well as spaceships with revolving sections. We see amazing shots of people walking on this curved floors. Or using sticky shoes. We not only see space… we see ourselves, for real, in space. I don’t think I’d seen anything that treated outer space as realistically as 2001, ever. And it happened in 1968.

    Put that movie in context, ignore the long psychedelic scenes (hey! it was the 60s!), and it’ll blow your mind. Context is important.

    I also recently read Snow Crash. When the book started describing a kind of physical virtual reality, with people walking on virtual streets, companies putting buildings on those streets, etc. I was honestly disgusted. I couldn’t stop feeling that the author somehow missed the last 10 years of history when we realised that VRML (remember VRML? Virtual Reality Markup Language) was not the way to go. And then I saw the book was released on 1992 and all made sense to me. Reading it in context was awesome and I enjoyed it a lot.

    Thanks to Daniel Magliola and Romina Roca for reading drafts of this.