Cool online presentations with free software

It has been a while since I wrote a tutorial to Share The Wealth, so it’s about time I shared some practical (if basic) knowledge beyond reposting a link.

For years I have had a pet project in the backburner: I wanted to create presentations without the need of dedicated software, commercial (like PowerPoint or Keynote), or free (like LibreOffice or OpenOffice). That way I could avoid bringing my computer to a lecture, and not worry about what computer system would be available in the auditorium. As long as there is internet connectivity or a USB port, I can bring a URL and a USB as a backup, and it will work.

I also wanted some minimum functionality like:

  • Being able to print the presentation or export it into PDF
  • Keyboard controls (including overview)
  • Accesible from any device
  • Progress bar
  • Transitions and effects
  • Reproducible in any browser without the need of any plug-in or additional software
  • Presenter window with next slide, notes and countdown
  • All in a file format that is easy to use, like HTML or Markdown

Of course, your wishes shall be granted by the gods of Free Software. Behold the no-dependencies JavaScript Reveal.js.

But to make the presentation truly awesome, there were a few more things I needed to do, like incorporating it into my Git workflow (for branches, versions, and all those Git goodies) and hosting it.

Let me walk you through the process, so you can also be up and running with Presentation Awesomeness in no time:

First, create a new repository on GitHub or GitLab (if you don’t know what that is, you need to read other tutorials first). For this tutorial, I’ll use GitHub, although in the office we use Gitlab.

Give your presentation a name, like “MyPresentation”.

Clone it to your local machine. You can use the GUI application (I like the new Electron-based beta), or use the CLI (“Terminal” for Apple OSX users):

git clone
[Obvious note: substitute “yourusername” for your user name]

Clone reveal.js onto your local machine. This time:
git clone

Go to the File System (“Finder” in OSX), locate your Git working directory (“Folder” in OSX), and move (or copy) the content of the directory “reveal.js” to the “MyPresentation” folder.

Modify the index.html file. This is where your presentation content and format goes. Take a look at the detailed tutorial here.

Once done, “push” the project to your Git. If using the CLI:
git push

Feel free to use Grunt for local dynamic serving. Some people even use generator-reveal, a Yeoman generator, to have each slide as an individual HTML or Markdown file.

If you are using GitHub, now, “automagically”, your slides are published at

One more detail: if you want to access the slides themselves (for a hosted presentation) instead of the “repo” (repository of all the files you just “pushed”), you need to go to GitHub and enable “GitHub pages” in this particular repository. Just go to the repository index.html page in GitHub, and select the down-arrow menu icon on the upper right (nexto to “insights”) “settings>pages” and activate GitHub pages for that repo.

Additionally, there are many plugins you can use with reveal.js, like kreator. Enjoy!

A little over 24 hours in Peru

On Sunday I left London to go to Peru for a business trip. I was connecting in Madrid but, due to a 4-hour delay in the departure of the flight, I missed my red-eye connection to Lima.

Fortunately, European Union regulations mandate that airlines feed and provide shelter to stranded passengers (subject to some conditions), unlike in the USA, where the same unfortunate circumstance is usually the passengers’ problem. So Iberia gave me a voucher for a dinner, a breakfast, a hotel night in a nearby hotel, two phone calls and the transfer to and from the hotel.

I was also rebooked on the next flight… 12 hours later. That meant missing my first scheduled customer appointment, which I asked my Peruvian distributor to re-schedule for me.

Upon arrival in Lima, I went straight to my hotel, the Country Club Lima, where I held my first business meeting. During dinner. It’s never a good idea to go straight to a business meeting after a 13-hour flight, but in this case, there was no choice.

I went to bed quite convinced that I would sleep the many hours my body was asking for. Long dark curtains, perfectly comfy and huge bed, all kinds of pillows to choose from… I was in sleep heaven. But, 6 hours later, well ahead of my wake-up call, I woke up and decided to get to work. The hotel’s great wifi made it a pleasure working from the hotel (which is quite rarely the case).

Four hours later, I went downstairs to have breakfast. I must admit the breakfast buffet was quite disappointing for such an upscale hotel, but the terrace table and perfect temperature made up for it.

I held my second meeting (about business in Colombia) while having breakfast, and my third (with my new distributor in Peru).

After breakfast I went to the top private university in Peru, Universidad Cayetano Heredia, to deliver a lecture to their Medicine professors. I have been a guest lecturer before, but it’s always a kick when I lecture lecturers, teaching teachers (I love recursion because it allows me to introduce slight modifications that trigger real changes, fractal-like, sort of a “modifier virus”) ;-P

Right after my lecture, which by the way I wrote completely in JavaScript and HTML on the plane, I went to the main meeting of the trip, with our largest customer in the country. It was a long and very intense meeting, but I’m glad I was there. We accomplished things that could have never happened on a conference call.

Right after that meeting, I went straight to the airport without having had any lunch, so before I boarded y flight to Madrid, I used my last few remaining Peruvian Soles to have an artichoke quiche and freshly squeezed cherimoya juice.

The flight went quite well. I love it when I can sleep for a few hours on a plane stretching my long legs, and then I work with my laptop, without any distraction, full concentration for hours.

After almost missing the quick layover in Madrid, due to the late arrival of the plane, which forced me to run the 2000 meters obstacle course in record time, I took a flight to London.

Upon arrival in London, I went straight to my office to meet a Spanish expert in Machine Learning and Big Data, and long time friend, Juanto, who came to London’s Google Campus to give a lecture. I missed most of his lecture, but at least we had a chance to talk and catch up. He was there with his brother and his son, and we laughed talking about how more than a decade ago we went to Switzerland to meet VCs to finance our planned startup for an online video and streaming platform. For reference, YouTube was founded in 2005 and Twitch in 2011. “Too early” they said. Like when I told my dad I needed his support to set up an “Internet Index” in 1994. “WFT?” he said. Yahoo was founded in 1995.

Anyway, by the time I got home my poor neglected body was telling me in its obscure language “someday you will pay for this, buddy”. I laughed, not because I don’t believe it or I don’t care, but because my body called me buddy. I know, I’m weird. Time to go to sleep.

Ibiza, day 4

The last day we felt a little sad knowing that we had to leave such a wonderful place. But we decided to make the most of it.

First, we made a quick trip to S’Aigua Blanca and Cala Llenya. Then we headed back to Portinatx.
Unfortunately, most charter boats only operate May-October, so my plan to sail around the island was thwarted. But, luckily, the very kind owner of a local grocery store in Portinatx told me I could borrow her paddle-board anytime.

Since my daughter saw the pictures of me paddle boarding in Thailand, she has been relentlessly asking me to take her paddle boarding. So I asked, and of course, she was thrilled!

For over an hour she paddle-boarded like a “natural”, up and down the Cala S’Arenal Gros. I kept pacing up and down the beach, with freezing water up to my knees (and a smile that would not go away), spotting her, and giving her some advice. In the meantime, my son took some great pictures with the DSLR zoom lens.

We left just in time to make it back to the ferry and we arrived home knowing that we would be back in Ibiza soon, and for much longer.

Now the whole family agrees on two favorite places in the world: New York and Ibiza. Just wait until I take them to Tokyo 😉

Ibiza, day 3

April 15 we went to my favorite part of the island, the South West, to visit all the little Calas I used to enjoy as a kid.

First Cala Bassa, where I remembered every corner, every water hole, every micro-cave… it’s mostly the same, including the little lizards (“lagartijas”) with the addition of a fancy beach club and some lounge chairs and cabanas. What a joy to be back!

Although the air temperature was great, the water temperature was quite cold (around 17º). That’s why “bathing season” in Ibiza goes from May-June to October. But, just like I did when I was a kid, my daughter did not care about the temperature and jumped right in (pictures not shown for privacy reasons… but believe me, her face shows both the shock of the low temperature and the Cala Bassa ™ happiness). I followed… up to my knees. I guess I’m getting old 🙂

Then we went to the magical and impressively beautiful Cala Comte, famous for the (arguably) most beautiful sunset. People from all over the island come to this beach to clap at the sunset every evening!

Instead of the hip Sunset Ashram, we decided the more upscale (yet understated) sea-side restaurant S’Illa des Bosc. What a surprise! It was exceptionally good cuisine, nice service, and unbeatable setting. I wanted that lunch to last forever (that’s when I secretly decided in my head to return to that place as much as I can with my family in the future… or even live there, even if a few months a year).

With replenished energy, we went to Cala Tarida for another cala, this time much larger and not as amazing.

On the way back to the apartment, we stopped at a little grocery store for some tangerines. My wife went in as I waited in the car as the kids slept. A couple minutes later she rushed out and screamed “Jorge, you have to go in, it’s amazing, they have all kinds of local yummies!”, so she took my place looking after the kids, and I went in to select Flaó, Ensaimada, Orelletes, and Sobrasada (along with the tangerines and oranges). Happy tummy!

Ibiza, day 2

April 14 we had an early breakfast and hit the road by car, although the best way to experience the many out of the way little beaches (or “Calas”) in the island is by bicycle or scooter, as you can access some quite secluded coastal gems.First we went to Cala Xuclàr, where the kids climbed like goats all over the

First, we went to Cala Xuclàr, where the kids climbed like goats all over the rocks and marveled at the old wooden structures fishermen built to protect their boats. They could not stop taking pictures of the amazingly transparent water.

Later we went to Cala Xarraca, for a more sandy, yet still small beach, and then we made a quick stop at Cala Benirràs.We had lunch in Ibiza town, right at Plaça Constitució, and then walked up Dalt Vila through the medieval wall gate all the way to the Cathedral. Quite a hike, but worth it, as the cobble stone winding roads are truly charming.

We had lunch in Ibiza town, right at Plaça Constitució, and then walked up Dalt Vila through the medieval wall gate all the way to the Cathedral. Quite a hike, but worth it, as the cobblestone winding roads are truly charming.

We decided to have dinner back at our apartment, to go to bed early and be full of energy again the next day.

Four days in paradise (Ibiza), day 1

After my daughter’s first concert, April 13-16 we took a little family vacation and went to the Mediterranean island of Ibiza.

Ibiza has a very special place in my heart. As a kid, I spent many summers enjoying “my own private little beach” in paradise, before there were any jet-setters, dance clubs, or large yachts on the island. There were only hippies and fishermen. It was heaven.

So I decided it was about time to take my American wife and two kids to the island.

We took the two and a half ferry ride from Gandia, so we could bring along my car and as much luggage as needed.

Upon arrival, we went straight to Portinatx, on the northernmost tip of the island, where we had rented a cozy and traditional beachfront two-bedroom apartment.

The views from the terrace were breathtaking, so we unpacked and run to the beach to enjoy Ibiza’s legendary sunset (best experienced from the West side of the island), with my daughter to capture the scenes with the camera and great sensitivity, while my son remained in the apartment “setting up the internet”. Then, as everything else was already closed, we went to a local bar for a quick dinner and to sleep early, as the following day we wanted to beach-hop all day.

A meeting in Chile and 5 days in Paraguay

Tuesday, March 28 I took a nice flight from London to Santiago de Chile. Nice not because the constant turbulence, which made it feel like I was flying in a food mixer with wings, but because laying down completely stretched, I slept almost throughout the entire flight. The fact that the cabin crew were unusually nice also helped.

After a quick meeting in Santiago de Chile, I took another flight, this time to Asuncion (Paraguay), where I stayed until Sunday, April 2nd.

Right after landing I was picked up by my local distributor and friend, who took me to their offices to have a long meeting preparing next morning’s 8:00 am presentation to a customer. Which meant little sleep.

For the next four nights, I stayed in the new Esplendor Wyndham Grand hotel. A very new and nice hotel. The breakfast buffet was quite weak, but the rooftop swimming pool (which had a DJ and bar at night) was sweet.

The hotel, along with many other luxury hotels in Asuncion, was completely full due to the Inter-American Development Bank’s annual meeting.

The business trip was going as expected, meeting high-level officials like the Secretary of Commerce, the Secretary of Health, the Secretary of Science, the President of the Social Security Administration, and the Director of the National Cancer Institute. Even the party at my distributor’s mansion was awesome, with the best beef grill I have ever had.

But on Tuesday, March 28, something happened that sparked a political storm. As The Guardian describes it:

On Tuesday, riot police and elite troops sealed off the small South American country’s congress. Inside, legislators traded punches and fierce insults, and – after the speaker of the house delayed a vote until Thursday – a pro-Cartes senator seized a microphone, proclaimed himself senate president, and steam-rolled through the changes with a show of hands.

Paraguay, like many other countries, has a collection of “unique Presidents” in its history (something that the USA now knows all too well), from dictators like Alfredo Stroessner to a Catholic Bishop that became president, and was involved in a big scandal when it was discovered that he had secretly fathered many children with different women, who constantly threw parties in his yacht, well attended by foreign models.

So the fears of a dictatorship looming, after the fiasco in the Senate, did not seem too extreme, regardless of what you think of its current President. What was extreme is the reaction of some rioters, who set the Paraguayan Parliament on fire Friday night, March 31st.


One of the rioters was shot and killed by the police:


In an ironic coincidence, the “Superviaducto” (three-level elevated highway) was inaugurated that same night. And I saw, from my hotel’s window, both the fireworks celebrating the new infrastructure investment, as well as the smoke coming out of Congress.

Although my sources at National Security (not long ago I would have thought impossible to say something like that) assured me everything was going to be OK, I did not want to find out for myself if things were about to take a turn for the violent, if martial law would restrict free movement, or if a mob would storm the hotel to give the bankers meeting there a piece of their mind. So I decided to leave for the airport 16 hours before my flight our of Paraguay was due to depart. Better safe than sorry.

Since I was so early, once in the airport I had to use my persuasion powers to gain access to the safe restricted area past passport control. But my Paraguayan distributor insisted in meeting me to have a final conversation and invite me to dinner, so I had to go through immigration and customs again (and again upon my return).

A few hours later the Secretary of the Interior was deposed, and the police officer that shot the rioter was arrested.

That swift action defending the empire of the law, and the united voice of all political parties calling for peace and calm, made everything return to normality very quickly.

I really hope that the beautiful country of Paraguay and its charming people can enjoy a very long period of peace, democracy, and prosperity.

But that was not the end of my trip. After the endless 16 hours went by, and a 2-hour flight to Buenos Aires, I had a 7-hour layover, followed by a 12-hour transatlantic red-eye flight to London.

Truth be told, the Admirals’ Club VIP lounge at EZE Airport made the layover bearable, since I was able to take a shower, eat (very decent for a lounge) food, read the newspaper, connect to the internet, and work with my laptop.

Who says the life of an international CEO is boring (or comfortable)? 😀

Hong Kong Day 2

After having breakfast on the deck, with views of the impressive cloud-brushing Hong Kong skyline, we disembarked one last time from our cruise ship, and took a taxi to the Airport Express Kowloon train station to check-in (including luggage) for our midnight flight, and leave carry-ons in storage. A very organized and civilized way to travel.

Then we took a taxi to the ferry terminal, and the Star Ferry to cross to the other side (Hong Kong Island) so we could take buses to visit different areas of Hong Kong:

  • Pier 7
  • Golden Bauhinia Square
  • HK Convention & Exhibition Centre
  • Typhoon Shelter
  • Sogo
  • Wan Chai
  • Peak (going up the Tram, and Sky Terrace 428)
  • Soho and Lan Kwai Fong, where we walked around and had lunch
  • Man Mo Temple

As the evening was becoming night, we took the Star Ferry back to Kowloon Tsim Sha Tsui, and walked through the 1881 Heritage to The Peninsula Hotel.

To go to the airport we took one of the complimentary shuttle buses that took us from The Peninsula Hotel to the Kowloon Station where we boarded the Airport Express, arriving at the airport in no time.

As our last dinner in Asia we went to Tasty Congee & Noodle Wantun Shop, where we had a feast:

  • Fresh fish balls congee
  • Crispy Chinese fried dough
  • Steamed glutinous rice wrap with pork and dried scallops
  • Fried beancurd sheet rolls with shrimp
  • Stewed pear with Chinese almond soup
  • Steam sweet egg yolk runny bun
  • and to drink: taro pearl, and winter melon honey with nata de coco

In the Flight back to London, I slept 7 hours, worked with my laptop, watched one episode of BBC’s Planet Earth II, and several episodes of The Big Bang Theory Season 10.

Thank you for the gift, my love. An unforgettable trip that we will have to repeat, with the kids. 🙂

Hong Kong Day 1

March 19 marked the last port of call in our trip.

We arrived at 16:00h, but had to wait until 17:00h to disembark because immigration authorities required ALL passengers to go through a face-to-face check, and a couple was missing (they found them an hour later).

We were docked at Harbour City Ocean Terminal in Kowloon, so as soon as we disembarked, we walked through the massive shopping mall, and then onto the streets of Hong Kong in Kowloon side.

China’s economic strength is clearly visible in Hong Kong: from the endless parade of luxury cars, to the multi-story luxury brand stores, to a forest of new skyscrapers being built simultaneously, some Chinese are enjoying their new riches… and they love nothing more than to show it.

We got souvenirs at Pan-Am Pearl in 9 Lock Rd., where airline crews regularly purchase their gifts (the now defunct Pan-Am even ordered their flight attendants’ pearls from them, thus the name), stepped in the Mira Hotel where Edward Snowden made history, went to the Temple St. Night Market, and walked back through the park to the ship, in time to see the nightly light show from the ship’s deck (it occurs daily from 20:00h to 20:13h). Unfortunately, it was so densely foggy that we only got to guess how awesome the show must be on a clear day.

After the light show, and leaving the presents we just bought in our stateroom, we left the ship again, to go have dinner: we had a few dumplings at Cheung Hing Kee Pan-fried Buns (Michelin Guide 2016), and a full dinner at Chee Kei (wonton noodles and crab congee), after which we took a nice stroll back to the ship for our last night onboard (docked in Hong Kong).


Saturday, March 18 the cruise was nearing its end as we sailed into China.

Before disembarking, we took a galley tour. It’s always fascinating to see what an extremely efficient machine a large cruise ship’s galley has to be in order to prepare and serve (on time and at the right temperature) thousands of dishes each day.

Upon disembarkation, a driver was sent to pick us up and take us to our destination, driving through Sanya:

They call Sanya “The Hawaii of China”. Saving the distance, I can see why: balmy weather, and tourist oriented.But we had a mission: the site inspection of the latest Editions resort, designed by Ian Schrager.

But we had a mission: the site inspection of the latest Editions resort, designed by Ian Schrager.

Even though it was a Saturday, a very nice sales rep guided us through the massive and impressive property, giving us all kinds of details and gossip, like the fact that drones are not allowed to fly over the resort after a recent incident where a very famous guest saw a drone flying and voiced concerns about her privacy, or the time when corrupt Chinese government officials were the number one customer of all luxury resorts in the area, until Premier Li Keqiang took a hard line against corruption and put an end to the practice.

We had a blast talking with him, so much so that we declined an invitation for a massage, in order to be able to spend more time talking with him as he treated us to lunch at The Jade Egret.

On the drive back to the ship, Sanya reminded us of the economic power of China: construction everywhere, luxury cars, and big infrastructure already being expanded.

I also documented warships like the ones China is allegedly using to sink and harass Vietnamese fishing boats and to illegally occupy Vietnamese (and others) islands in the South Sea (which they call the South China Sea), while the international community remains mostly silent. Like Russia with Crimea. Or USA with unaccounted for drone bombings and massive spying on national and international communications.

We need to take a stand, stand up, stand united, and stop the international bullies from their criminal imperialistic pretenses.