Pablo's blog

A bit of this, a bit of that and a lot about computers

Making your app work with no data

Most applications, web, desktop or mobile, handle some kind of data. When we are developing them we generally generate some sample data to play with and we forget to ever run the application without it. The problem is that the first impression people will get of our app is without data. And first impressions are important.

In the application I’m building, Watu, we are resorting to just create some sample data for customers to play with. Making the application beautiful and meaningful without data is just too hard. It seems the guys at JetBrains spent some time thinking of this because RubyMine 4.0 shows this when there are no open files:

I think that simple change it’s a good step towards making the application nicer in the no-data scenario, making people happier, as well as making people more productive in it, making the application more useful.

I do wonder why they didn’t include the most useful of the shortcuts: ⌘⇧N. I think I press that more than any other. It pops up this little dialog:

in which you can type and it’ll search among all your files (and files inside the gems, that is, libraries, of your project if it doesn’t match anything in your project or if you enable by ticking the include non-project files):

What I really like, compared to other implementations of this feature, is that you can add more parts of the path, for example:

Without that feature, my productivity would drop a 10%. I’m not exaggerating, that’s my estimation, as I recently have to code using TextMate instead of RubyMine.

Before you send me the hate-mail, I know TextMate has a similar feature although I think not as advanced (not without plugins at least) but since the key shortcut was different, it was almost like it didn’t exist for me, so I experienced coding without that feature at all.

Another potentially useful way to find code is to use ⌘N which allows you to search for a class:

But since in a Rails projects most classes are in a file with the same name (but underscore instead of camel case) and the file dialog allows me to find views, wich the class dialog doesn’t, I never use the class dialog.

No… I’m not affiliated with JetBrains, makers of RubyMine in any way. I just love the tool and I wish more Ruby programmers would give it a try because I think they’ll also find it useful and the more people that are using it, the more resources JetBrains is likely to put into its development which ultimately benefits me. And they are cool guys, a pleasure to deal with every time I report a bug or ask for a feature.

ASCII Table of Correlatives

Recently I needed the table of correlatives in pure ASCII form and I couldn’t find it online, so I built it (it took more time that I’m willing to admit):

│               │ Question │ Indication │ Indefinite │ Universal │ Negative │
│               │ ki–      │ ti–        │ i–         │ ĉi–       │ neni–    │
│ Thing -o      │ kio      │ tio        │ io         │ ĉio       │ nenio    │
│ Individual -u │ kiu      │ tiu        │ iu         │ ĉiu       │ neniu    │
│ Reason –al    │ kial     │ tial       │ ial        │ ĉial      │ nenial   │
│ Time -am      │ kiam     │ tiam       │ iam        │ ĉiam      │ neniam   │
│ Place -e      │ kie      │ tie        │ ie         │ ĉie       │ nenie    │
│ Manner -el    │ kiel     │ tiel       │ iel        │ ĉiel      │ neniel   │
│ Quality –a    │ kia      │ tia        │ ia         │ ĉia       │ nenia    │
│ Amount -om    │ kom      │ tiom       │ iom        │ ĉiom      │ neniom   │

I used the DOS box drawing characters and only single lines. Double lines in some common fonts were broken. And the beautiful Unicode box drawing characters were broken in several fonts.

If you admire the table of correlatives as much as I do, maybe you want to buy some schwag with it: (disclaimer, I’m selling that stuff).

Isn’t this a great notebook to take to your Esperanto lessons:

Not allowed during exams

Drawing, proud for the first time

Since I been taking drawing lessons I was never satisfied with the results. To be honest, the approach the teacher is proposing is not what’s natural for me, so it’s a struggle.


Couple dancing

Photo by mattcornock

I started taking dancing lessons recently. It was something that’s been on my to-do list for maybe half my life… but that’s another story. I went for ballroom and latin dancing lessons at The Dance of Life Studio. I think the teacher, Angelo, is great.

Angelo shows us a move, first to the gents and then to the ladies or the other way around. We practice it by ourselves for a little while and then the expected but also dreaded time comes: to try it out with a partner.

I walk to a partner, take her right hand with my left and set into position. It’s like walking to the edge of a cliff and peek down. The excitement! The expectation! 2… 3… 4… we jump! Most of the time, we crash. Sometimes even literally!

But sometimes, we fly! Together we rise above the horizon and I wish we would never land again. It’s magic!

Thanks for reviewing this post to: Daniel Magliola and Romina Roca.

Strange experience when viewing a flat

I recently moved to London and I’m looking for a flatshare close to the office. I went to see one and after we did the usual tour of the whole house and we sat down for a little chat, something unexpected happened… the lights went off.

A big dark house

Picture by Ben Gilman

The lights and everything. Total black out. The woman receiving me quickly confirmed that it was the whole block. I suppose we both felt better about it. It wasn’t something wrong at the house.

I used the flashlight… or should I say torch? in my phone and she was glad we got some light. The situation was less than ideal… but some laugh, light some candles and it would have been alright. Something else happened.

The alarm… that alarm that is installed at the house but nobody uses and it’s supposedly disabled. That alarm started to making a loud horrible noise. What a pain! We tried calling the numbers in the alarm box but those lines were disconnected. When I left it was still hauling. So weird.

Moving to London, joining a startup

The Palace of Westminster at night seen from the south bank of the River Thames.

London by Jim Trodel

I’m making a lot of changes in my life. I’m moving to London… tomorrow. I’m really excited about it. I wanted to live in London for a while already. In that topic, do you know anyone that wants to share a flat in the London Bridge area?

Also, I’m changing jobs. In London I’m joining a startup called Watu. Well, I’m part of the founding team and I’ll be the CTO, which for now, it’s just an overly fancy way to say the coder, but I like it. We are solving the problem of managing employees from publishing the open positions at a company to interviewing, to paying salaries, to assigning and managing shifts. The whole deal. I’m really excited about it and I’m looking forward to it.

Learning to shoot a handgun

Finally I managed to go to a course to learn to shoot a handgun. Generally I would prefer to spend money on things. For the price of the course I could have bought a great airgun, but happier people spend money on experiences, not on things. I’m trying to learn.

The first lesson was with a .22 handgun. The teacher lent me his own CZ 122 of which I took a picture:

Picture of CZ 122 Sport, part black and silver, with the slider open

CZ 122 Sport, the one I shot with.

I loved shooting with that one. It worked really well. Much better than the other really used up guns for beginners. On the second lesson we went up in calibre to a Bersa Thunder 9:

Stock picture of a pistol Bersa Thunder 9, black

Bersa Thunder 9.

I learned something very important. The teacher told us to load 5 rounds and shoot them. I did that, put down the gun and moved the target back to me. I counted 4 holes. I doubt I missed the target completely because those four holes were very close to the center. Then I looked down to the table and the gun: it was still loaded, there was still one round in the chamber and ready to fire. In my mind that gun was unloaded; but it wasn’t. I obviously treated it as loaded even when I believed it wasn’t because of… well… this.

Me, shooting in a very controlled environment, knowing I had to count the shots, and I miscounted. I’ll never laugh again at anybody for not counting the number of shots correctly. It’s so easy to make a mistake. And always, always treat every gun as loaded… they might be.

Thanks for reading a draft of this to Ethan Blanton.

Uptime: 100%

Balance by Tony Roberts

This is the first time I see this:

Outages: 0
Downtime: 0 hrs, 0 mins
Uptime: 100.00%

It was always above 98%, often above 99% and I was proud of that because it was my own crappy server doing it. But now I’m proud of not caring about it, letting someone else solve a problem I’m not interested in and focus on what I am interested in. 100% uptime provided by

You think airline food sucks?

Vegetarian Meal #3 by James Perkins

You think airline food sucks? Try being vegetarian. I’m not a spoiled whiner, I truly appreciate being able to cross an ocean over night and I’m fine with the mass produced food they serve in airplane. Everybody complains about the food, but when you are vegetarian, you go into a new level of pain.

The first part of the pain: requesting it. I request the vegetarian food several times. I already had requests lost, ignored, not honored, whatever. I request it on the web, by phone, by carrier pigeon, etc. Several times each. Even then, there’s no guarantee.

Then it comes the second part: the crew. I just finished my breakfast in a flight from Madrid to Buenos Aires (yes, I wrote this on the airplane) with the best and the worst of the crew. I’ll describe both to be fair.

One flight attendant gave me the special food. She said “You ordered special food? ” and I replied “Yes, vegetarian “, and she handed me the long yellow box. I opened it and found little pieces of burned carcasses of chicken. I checked the label… definitely not vegetarian.

When another flight attendant came I told him about my food and they had a short conversation. Basically all non-standard food was distributed equally. Someone who should have gotten chicken was eating my vegetarian food. This is the norm. The crew will screw it up. In my experience almost always. I very rarely get an uneventful flight.

The flight attendant to whom I reported the issue was a little bit upset about the other messing up and here’s the good part: he went and picked vegetarian food from other meals and built a special box for me. To that guy, J. M. Anton: Thank you, I really appreciate what you did… you turned a terrible flight and a lot of anger into a pleasurable experience (loved the little piece of chocolate).

Should everything go well you still have to deal with the food. You may think that when everybody gets a cheese and ham sandwich you’d get a cheese sandwich. WRONG. You may imagine that when everybody gets spaghetti with meatballs you’d get plain spaghetti. WRONG. You get an insipid salad (for breakfast) or some gooey boiled vegetables. On this flight I was lucky to get some rice (next to the gooey vegetables). Who chooses this food? It’s terrible. It’s a torture. Compared to this, the food is got at the hospital is a 5 star gourmet meal.

Changing my pictures workflow

Canon camera by Kazuhiko Teramoto

I been using iPhoto for a few years right now and I like it a lot. Before using iPhoto I was manually marking who was in each picture and where it was taken, so when I saw iPhoto could do it almost automatically I bought a mac. Yes, iPhoto was a big part of buying a mac.

Some time afterwards, I got a DSLR, starting shooting in raw, and as usual, shooting a lot. I rarely remove pictures. I don’t see a reason, my hard drives get bigger faster than I take pictures. My collection has around 35000 pics, at least, and lot’s of raw too. This is not what iPhoto is designed for.

I looked around and Apple’s Aperture is the only pro photo management software that keeps all the features I need and like from iPhoto (faces and places mostly). Since the latest iPhoto is not very robust (it actually crashed on me once and I had to restore everything from backups), I decided to migrate to Aperture.

Something that surprised me about Aperture is that it doesn’t prompt me to delete the pictures after importing. I searched on the interwebs about this and apparently, it’s a feature. When people asked how to delete pictures, people replied: “Don’t! If you delete pictures after importing, your pictures are in only one place, if something happens to them, they are lost.”

One should be careful when getting advice on how to use an Apple product as the Apple fanboys will defend whatever Apple believes we should do even if it makes no sense and kills kittens in the process. But this actually makes sense. I had my computer crash during the import procedure and take all the pics with it. I’m glad iPhoto didn’t get to delete the pictures in the camera when that happened. Both Aperture and iPhoto are capable of ignoring duplicates when importing and I would expect any other useful picture management program to do the same.

I decided to embrace the workflow, I bought a bigger memory card for my camera and now I don’t delete the pics from the camera until a couple of days later, when my several backups solutions managed to backup the new pictures.

Another reason to do it this way, and delete pictures by formatting the memory card, is that it’s the only way to ensure there are no extraneous files on the card, taking space, that neither the camera nor any program need or understand.

Post Navigation


Get every new post delivered to your Inbox.

Join 377 other followers

%d bloggers like this: