7c0h

Memories

As a software developer I constantly have to fight the urge to say "this is nonsense" whenever something new comes up. Or, to be more precise, as a software developer who would like to still find a job 10 years from now. I may still prefer virtual machines over clouds, but I also realize that keeping up to date with bad ideas is part of my job.

I've given around turns around the Sun by now to see the rise of technologies that we take for granted. Today's article is a short compilation of a couple of them.

Seat belts

When I was a child, 2-point seat belts were present in all cars but mostly as decoration. In fact, wearing your seat belt was seen as disrespectful because it signaled that you didn't trust the driver, or even worse, that you disapproved of their current driving. And they were not wrong: since most people didn't use their seat belts in general, the only reason anyone would reach out to use theirs was when they were actively worried about their safety. Drivers would typically respond with a half-joke about how they weren't that bad of a driver.

It took a lot of time and public safety campaigns to instill the idea that accidents are not always the driver's fault and that you should always use your seat belt. Note that plenty of taxi drivers in Argentina refuse to this day to use theirs, arguing that wearing a seat belt all day makes them feel strangled. Whenever they get close to the city center (where police checks are) they pull their seat belt across their chest but, crucially, they do not buckle it in. That way it looks as if they are wearing one, sparing them a fine.

Typewriters and printers

My dad decided to buy our first computer after visiting a lawyer's office. The lawyer showed my dad this new machine and explained how he no longer had to re-type every contract from scratch on a typewriter: he could now type it once, keep a copy of it (unheard of), modify two or three things, run a spell checker (even more unheard of!), and send it to the printer. No carbon paper and no corrections needed.

A couple years later my older brother went to high school at an institution oriented towards economics which included a class on shorthand and touch typing on a typewriter. Homework for the later consisted on typing five to ten lines of the same sentence over and over. As expected, the printer investment paid off.

... until one day my brother came home with bad news: he was no longer allowed to use the computer for his homework. As it turns out, schools were not super keen on the fact that you could correct your mistakes instantaneously, but electric typewriters could do that too so they let it slide. But once they found out that you could copy/paste text (something none of us knew at the time) and reduce those ten lines of exercise to a single one, that was the last straw. As a result printed pages were no longer accepted and, as reward for being early adopters, my parents had to go out and buy a typewriter for my brother to do his homework.

About two years later we changed schools, and the typewriter has been kept as a museum piece ever since.

Neighborhoods

My parents used to drink mate every day on our front yard, while my friends and I would do the same with a sweeter version (tereré). My neighbors used to do the same, meaning that we would all see each other in the afternoon. At that point kids would play with each other, adults would talk, and everyone got to know each other.

This is one of those things that got killed by modern life. In order to dedicate the evening to drink mate you need to come back from work early, something that's not a given. You also need free time meaning, on a way, that you needed a stay-at-home parent (this being the 90s that would disproportionately mean the mom). The streets were not also expected to be safe but also perceived to be safe, a feeling that went away with the advent of 24hs news cycles. Smartphones didn't help either, but this tradition was long extinct in my life by the time cellphones started playing anything more complex than snake.

Unlike other items in this list, I harbor hope that these traditions still live in smaller towns. But if you wonder why modern life is so isolated, I suggest you to make yourself a tea and go sit outside for a while.

Computers

Since this could be a book by itself, I'll limit myself to a couple anecdotes.

When Windows 3.11 came up, those who were using the command line had to learn how to use the new interface. Computer courses at the time would dedicate its first class to playing Solitaire, seeing as it was a good exercise to get your hand-eye coordination rolling. Every time I think about it I realize what a brilliant idea this was.

My first computer course consisted on me visiting a place full of computers, picking one of the floppy disks, and figure out how to run whatever that disk had. If it was a game (and I really hoped it would be a game) I then had to figure out how to run it, what the keys did, and what the purpose of the game was. There were only two I couldn't conquer at the time: a submarine game that was immune to every key I tried (it could have been 688 Attack Sub) and the first Monkey Island in English (which I didn't speak at the time). I had trouble with Maniac Mansion too until my teacher got me a copy of the codes for the locked door.

This course was the most educational experience of my life, and I've struggled to find a way to replicate it. Letting me explore at my own pace, do whatever I wanted and asking for help whenever I got stuck got me in an exploration path that I follow to this day. The hardest part is that this strategy only works with highly motivated students, which is not an easy requirement to fulfill.

Red Bull does not give you wings

Today I'll take you on a small trip down the rabbit hole of verifying whether something reported on the media is actually true.

Let's start with this article from NPR about customers suing food companies for misleading companies. Let's take a look at this bit:

"Red Bull announced it would pay more than $13 million to settle a lawsuit brought by buyers who said the energy drink didn't — as the marketing materials promised — 'give you wings'".

What a stupid lawsuit, right? Of course drinking an energy drink won't give you actual wings!

Well, hold on. If we follow that link we reach an article on Business Insider with the click-bait title "Red Bull Will Pay $10 To Customers Disappointed The Drink Didn’t Actually Give Them 'Wings'". The text, however, explains that the wings are figurative, that Red Bull claimed that "the drink can improve concentration and reaction speeds", and that there was no scientific support for any of that.

However! Red Bull has caffeine, which is supposed to actually do all that. So what gives?

We need to go one level deeper. After plenty of searching through articles just copying each other we eventually reach this website with the text of the actual lawsuit. According to the complaint, Red Bull...

"During the class period, [Red Bull] have made various representations to consumers about the purported superior nature of Red Bull, over simpler and less expensive caffeine only products, such as caffeine tablets or a cup of coffee. To bolster those claims [Red Bull] post "scientific studies" on the Red Bull website which they say 'prove' Red Bull's superiority.

However, no competent, credible and reliable scientific evidence exists to support [Red Bull's] claims about the product".

Instead of fighting it in court, Red Bull settled for $13 million and retired the slogan.

So let's recap: we started with a perfectly reasonable complaint about false advertising, namely, that Red Bull's claims about being superior to plain coffee were false. This complaint ended up on a $13M settlement. It was then wrongly reported as "the drink does not improve concentration" (it might, just not any better than plain coffee), then was further reported as "customer angry that Red Bull doesn't give you (metaphorical) wings", and presented with click-bait titles that lead you to believe that the complaint was about actual, literal wings.

Remember, kids: when social media tells you something that sounds too good to be true, it usually is. Always check your sources! Otherwise you may end up backpacking through Europe convinced that touristic places are not full of tourists simply because Instagram told you so.

Bad AI (I): Meoweler

Oh boy, where do I even start with this...?

Someone posted yesterday to Hacker News their new project: Meoweler, a cat-themed travel website that's almost entirely auto-generated.

I have written here before about the realistic dangers of AI, predicting that we would see "garbage in any medium that offers even the slightest of rewards, financial or not". And boy was I right...

Here's a short, non-exhaustive list of problems I found with this website:

  • Offensive stereotypes. About half the Argentinean cities I've checked are based on stereotypes about the country, regardless of whether they are even remotely applicable.
  • Offensive pictures. I grew up in not-so-popular cities across the country and I can tell you: I wasn't born in a war-torn city, I didn't go to school in Tatooine, I didn't study in a mirror-like desert, and I didn't go to University on a mountain city. I just lived in perfectly normal, standard, slightly boring cities. But you wouldn't know any of that by looking at the Midjourney-generated illustrations for each one of them.
  • Bad information. I don't care that much that the AI suggests that Potsdam's Brandenburg Gate is a "mini version" of the one with the same name in Berlin (which AFAIK is not true), nor that it talks about getting lost "in the maze-like streets of the Old Town" for the squarest blocks you'll find outside of Manhattan. But when your list of attractions includes sightseeing points in cities more than 200km away... and in a different Province... I hope you remember to bring your good walking shoes.
  • Dangerous information. The site includes an "LGBTQ safety" rating which is auto-generated and not checked against any official source. The guide will also gladly include locations "off the beaten path" that are plain unsafe for a tourist. One such advice suggests "lounging in sunbathed plazas" in a city that Travel Safe - Abroad rates as having a high risk of pickpockets and medium risk for muggings. And while I'm not here to tell you how to live your life, I think "don't" is a solid advice for this situation.

The source code for the website is open, and the license seems to be "do whatever you want with it, no restrictions". And you know what? People will do whatever they want with it: they will spin God-knows how many clones (dog themed, child themed, circus themed, ...), slap ads on it, and the internet will drown a little more in auto-generated, unchecked, ad-ridden SEO garbage.

But hey, at least the website has the tiny footer "Beware, most of the content was generated by AI". So if you end up being robbed at gunpoint because you went "off the beaten path" it will actually be your fault.

One final digression: I decided to check some of the cities listed as "Do not travel" in the US State website and I landed on Kabul, Afghanistan, which the US warns you against visiting due to armed conflict, civil unrest, crime, terrorism, and kidnapping. The AI description reads "Kabul is a friendly city: despite the violence, Kabul residents are extremely hospitable and friendly towards visitors", which to me as a (computational) linguist is fascinating: if the locals are hospitable and friendly, then who is perpetrating "the violence"? Is this sentence blaming foreigners for the situation in Kabul? Can someone kidnap you and be hospitable at the same time? And since we know that a guest who kills their hosts in their own house loses privileged status, does robbing, kidnapping, and maybe murdering your visitors mean that you lose your status as a friendly city?

I would say that I'm maybe overthinking it, but let's be honest: given that no human thought of any kind went into this entire website, literally any attempt at understanding it is, by definition, overthinking.

(I have changed the title of this article to add a "(I)" at the end. I get the feeling this is far from the last entry in this series...)

Virtual Conferences: a proposal

Looks like I wrote this article and forgot to publish it for a whole month. I hope the extra length will make up for it.

Now that the 61st annual meeting of the ACL is over, and based on my experience as a member of the Virtual Infrastructure Committee, I would like to share some thoughts on what my ideal virtual conference infrastructure would look like.

A conference, for our purposes, is an event that takes place in some random venue around the world. Researchers submit papers with their latest research results and, if accepted, present those results in sessions where related papers are bundled together. Conference attendees typically hear a short talk about the paper (or read a poster) and then ask questions to the authors.

Given that we live in a post-pandemic world we are going to prepare for a hybrid conference. This is cheaper (less mouths to feed means lower fees) more accessible (researchers in countries with less resources will thank you for the plane ticket and hotel costs they'll save), greener (less people flying around), easier to archive, and a good idea overall.

The handbook

It is traditional in conferences to offer a handbook containing all information about the conference - schedule, paper abstracts, venue maps, social events, tourist info, sponsors, and so on. But given that this year's booklet reached an impressive 462 pages it may be time to think about a website or app to replace it.

I do not believe that the conference website and the handbook can be unified, for reasons I'll explain later. So let's assume we want to develop a website or app exclusively for the handbook. Let's call it AppBook.

The main use cases for AppBook are:

  • Checking the schedule to figure out either what's going on at some time (exploration) or to find out when is a specific event taking place (information retrieval).
  • Adding reminder for events you would like to visit, from entire events down to specific talks. It is not unusual to be there for Paper 1 in Room A, then go to Room B next door for Papers 2 and 3, and so on.
  • Get details about a specific paper: if the title catches your attention then you may want to read its abstract, and/or you may want to see what else the authors are presenting.
  • General information about the venue: maps, tourist info, vouchers, etc.

The schedule is, I believe, the hardest part. Sure, there are plenty of scheduling apps around that do the information retrieval part quite well, but how about the exploration part? Taking the EACL 2023 handbook as an example (because I have it here on my desk): I can see that Session 6 on Day 2 has two Tracks I'd like to visit, namely, "Information Extraction" and "Generation". With the paper booklet I can put one finger in the Schedule page, flip back and forth through the pages for each Track, decide which one is more interesting at which time, and plan my visit accordingly.

Compare that to a regular website calendar: clicking on a Track takes you to the abstracts, but clicking "back" takes you to the general calendar. In the specific case of the talk I heard today that means scrolling back down to the correct time slot, clicking on "+", finding the right Track (there are 13 parallel workshops), open this Track and, since the interface doesn't allow for right click, remember somehow what the previous one had to offer. Repeat this for all 3-4 Tracks that one could consider, and this quickly turns into a mess.

This leads me to the first three requirements:

  • AppBook has to be lightning fast, which in this case means offline. Sure, you can periodically download updates to the database, but there is no way to implement "lightning fast" when you have 2k+ attendees checking the website at the exact same time with shoddy WiFi. I can tell you that a full conference fits in ca. 10Mb of JSON.
  • The interface has to trivially allow back-and-forth between all events taking place in parallel. Swiping left/right to switch Tracks could work, but I'd have to play with a prototype first to ensure it's not confusing.
  • It has to be mobile first. If you want to get rid of the handbook you need to ensure that even the humblest of devices can provide an equal or better experience than the paper version. When in doubt, remember that computer interfaces could already do this type of stuff in real time 20 years ago.

Chat

Even though I insisted on AppBook being offline first, it would be foolish to ignore all it could do if we judiciously let it go online. At its most basic, you should be able to download the actual papers directly from the interface. The next step is allowing access to both pre-recorded and live videos, which is a lot of work on the backend but relatively straightforward on the frontend. And if your internet is down you'd still have the handbook information.

Chat, on the other hand, is where I think the app could shine. Having a dedicated chat for every paper is a great way to ensure that all attendees can contact you, which helps in-person attendees to talk to you even outside your presentation window and empowers virtual attendees to talk to authors they would otherwise miss. And even better: once you allow attendees to create their own channels you can sit back, relax, and watch communities of like-minded people come together, plan events, and have fun.

If you choose to go this way then you could consider adding a feature to AppBook: "log me in as author". If you register as the author of a specific paper then you would get some extra functionality such as administrator rights over channels for your papers, notifications whenever someone posts in there, and reminders of where and when you are supposed to go.

And finally, if you use something like Zoom then you may want to disable the chat function in videos. Sure, people may be used to it, but if you leave them on then now you have two sources of questions and you've fragmented your userbase (see the first paragraph of "Supporting Infrastructure").

Website

If you are a virtual attendee, spending a week looking at your phone would probably be torture. More so when there's almost certainly a big screen somewhere around that you could be using instead. So we need a website too.

Could AppBook and this website be merged together? I don't want to say "no", but I will however say "well... errmmm..." while making face gestures. See, the website and AppBook have different audiences and different use cases, to the point that unifying them might just be impossible:

  • Speed:
    • AppBook: lightning fast.
    • Website: regular website speed.
  • Data source:
    • AppBook: offline first.
    • Website: online first.
  • Device:
    • AppBook: designed for your mobile phone.
    • Website: designed for your laptop and/or desktop computer.
  • Interface:
    • AppBook: one window at the time. Interaction is everything. You may need to go native, but maybe a web app would do.
    • Website: multiple windows at the time. Most interaction issues can be solved opening a second tab.
  • What would you use it for:
    • AppBook: figure out what's going on and/or where to go.
    • Website: stream live events, read papers.

Poster sessions

Posters are tricky. The current best solution I've seen is Gather.Town, but now you are depending on an external platform. I imagine you could get rid of poster sessions altogether with a combination of pre-recorded videos and chat, which is coincidentally what the ACL Conference offers every other year. Then again, they also offer Gather.Town, so it's hard to say which one is better.

In-person notes

Organizing a conference is a lot of work, but luckily we've done it for long enough that there isn't much new that I could say. I should however point out some details to keep in mind:

  • All talks should be live-streamed and questions should be accepted both in-person and via chat.
  • Every room needs the proper equipment for remote presenters. That means being prepared for presenters joining via teleconference and, conversely, having a mic at hand for attendees to pose their questions.

Supporting infrastructure

In my ideal conference platform, there is exactly one source of truth and one way to get information. There are no two schedules needing coordination, nor two chat platforms, nor two video platforms. There is one way and one way only.

In other words, the infrastructure would be built as such:

  • A central "source of truth" database with all information about the conference. You change it there and it is reflected everywhere (which in the case of AppBook means "eventually").
  • A file hosting platform with every paper and poster.
  • Some kind of video platform for live-streaming events.
  • The website, which is your main portal to all those things above.
  • AppBook, which presents a subset of the above information but in an easy-to-query format.
  • A chat app: bundling this inside AppBook would probably be a bad idea, and a dedicated app may be better. AppBook could query the chat backend once in a while, but only as long as it doesn't make the app slower in any way. Bundling it with the website, on the other hand, would make perfect sense. And failing that, an "open in app" link should also work fine.

Should AppBook allow you to synchronize your reminders with the website (and vice-versa) to get notifications across devices? I get the feeling that "yes" would be the best solution (and again, as long as it doesn't make AppBook any slower), but this would significantly impact the complexity of the whole operation. So this remains an open question.

Conclusion

I don't know of any platform offering all of this at once. Most platforms I know offer one feature or the other with varying degrees of success but I haven't yet seen a good implementation of AppBook.

And please, I beg you: few things are as annoying as an app that abuses its dominant position. If you use my login information for crawling my LinkedIn information and "connect me" to other people in my (wrongly scraped!) company, I may not have a recourse right there and then (there's rarely an alternative conference app) but I will make it my goal to ensure that no one uses your app again.

10k running plan

I am currently considering whether to run a 10k and decided to take a look at the available training plans. This being the internet I found a whole lot of reasonably good training calendars but, this being the internet, they are all detailing the distances in freedom units miles.

Seeing as I now spent an unreasonably long time translating one of those calendars, I have decided to put it here simply because I can. The original plan with much more detailed information can be found in this website.

Week Mon Tue Wed Thu Fri Sat Sun
1 Rest 4.8k CT 4.0k (race pace) Rest 4.8k 30 min EZ
2 Rest 4.8k CT 4.8k (race pace) Rest 5.6k 35-40 min EZ
3 Rest 5.6k CT 5.6k (race pace) Rest 6.4k 35-40 min EZ
4 Rest 6.4k CT 5.6k (race pace) Rest 7.2k 40-45 min EZ
5 Rest 6.4k CT 4.8k (race pace) Rest 8.0k 40-45 min EZ
6 Rest 6.4k CT 5.6k (race pace) Rest 9.6k 40-45 min EZ
7 Rest 6.4k CT 4.8k (race pace) Rest 11.3k 40-45 min EZ
8 Rest 4.8k CT or Rest 4.8k (race pace) Rest Rest 10k

Legends:

  • CT: Cross training. Swimming, biking, strength training, or even rest if you're feeling down. Anything but running.
  • EZ: Easy, comfortable pace. Walking is fine. Cross training is fine too.
  • Race pace: you are free to run at a comfortable pace the rest of the week, but on those days you should stick to your intended race speed (roughly 10km/h for the average runner).