Hi, I'm Frank!
Software Business, minus the bullshit... Oh and good movies too!
I'm Frank, I solve problems
Check what I can do for your development teams, growing startup, tech business... Tap here!
Guess from what movie the heading☝️is coming from? Hint: check my movie section
In a world obsessed with doing more, turns out the biggest productivity trick is learning NOT to do!
All this blog will be about: software business, in an irreverent tone, splashed with black humor and good movies.
Get it right on the first try! My checklist: dos and don't's, common pitfalls, and comments beyond the obvious!
I've worked for several startups, I created mine from scratch and took it to generate revenue... This is all I learned on the way, hopefully it helps you to avoid some pitfalls...
There are people who take for granted you have to take their shit as if it was normal... And maybe it is normal for them! But that is not your problem! Here is how to effectively deal with them...
I've worked for several startups, I created mine from scratch and took it to generate revenue... This is all I learned on the way, hopefully it helps you to avoid some pitfalls...
Serious, professional... And a lot of fun!
I get stuff done while enjoying what I do!That's my motto and it's been well proven across several different projects, teams, countries, contexts...
Enjoyed reading?
Leave your email and you will know when I publish new stuff! And no, no intention to spam you...
Great to have you in!
Welcome to your bullshit-free corner!
Profiling technical candidates
TL;DR: For recruiters and consultancy companies, I can real-world test your candidates for a given position beyond their technical capabilities so that you can make a solid and informed decision about who would be your best bet.
My natural social skills, combined with my acquired technical skills, and 20 years of experience in the industry, enable me to X-ray see candidate abilities, flaws, and disposition.
I go beyond measuring technical expertise, strengths, and weaknesses… I can spot each individual’s secret sauce, and I will know whether they are the right solution for your needs.
For companies, this means saving a lot of time, money, and headaches caused by hiring the wrong people. Instead, I’ll help your company have consolidated teams composed of people who get things done and work like a well-oiled machine.
For recruiters, this means saving you time and increasing your chances of success, candidate by candidate. I achieve this by narrowing down from potentially good candidates to only candidates with true potential. Additionally, my assessment method helps set candidates up for success, so your customer satisfaction increases and you have more business opportunities.
My assessment method covers the following:
Preparing a technical project specific to the position
Onboarding ability assessment ®
In-depth assessment of the technical project
Communication skills for technical domains ®
Position-specific behavioral interview for the candidate
Report identifying strengths, weaknesses, opportunities, and risks of the candidate
Drop me a line if I can help you or your company.
What can I do for your business?
TL;DR: I get things done and keep people happy, both business and tech people.Bullshit-free management for tech companies! I keep software projects simple and transparent so your business ticks optimally and you sleep well at night!
Long story short, I get things done and learn what works well in your company and what doesn’t while getting there.
By things, I mean big software projects.
When I talk about what works well and what doesn’t, I'm not just referring to software. I also take into account the people and processes that drive your business, aiming to improve them all.
My natural social skills + deep technical skills + enterprise experience allow me to help your teams get straight to the point, while keeping them motivated and improving on each step they take, so you will end up not needing me!
By sharing my habits, I bring soldiers up individually based on each person behind the developer. Then I have them act like a squad! I establish a stoic and effort-driven culture that will make a real difference in performance!
My role extends beyond software development. I'm a leader, adept at building and guiding teams through every stage of your projects: idea to MVP, complex integrations, scaling to the next level…
I can do high-quality technical profiling, too.
Drop me a line if I can help you or your company
Software, movies, and me
TL;DR: You will find here the compeling parts of my experiences, usually related to software, always in a bullshit-free tone, sprinkled with dark humor, just like in the movies I like!
I'm Frank, I've lived here and there, and for the last 20 years, I have worked solving problems in the software industry 🧑💻
You will find here doses of bullshit-free reality doses about anything related to software in a way or another.
Sadly, our trade suffers a lot of fanciness, trendiness, and unnecessary politeness where cool people tell you what you must do, use, and praise (and perhaps your boss listens to them…🤦)
Being naturally immune to those (shitty) influences has been tremendously helpful and healthy (although not always easy) throughout my life and career.So I'd like to share my point of view by telling my professional stories, always presented with a sense of humor! 😁
I always wanted to become the software version of the sicario they send in gangster movies when things get really complicated. He will speak only necessary and will get the thing done! A bit like Mr. Wolf here!☝️
There is life beyond work, and one of the things I love most is a good movie! I'll share my recommendations and relate to movies on my posts so, at the very least, you will get classy recommendations directly from a movie geek! 🎬 😉
Enough foreplay... Welcome to my place; I hope you enjoy it!
Enjoyed reading?
Leave your email and you will know when I publish new stuff! And no, no intention to spam you...
The power of NOT doing
(or how to better pick your professional battles)
_TL;DR: These days, people seem to be obsessed with doing more, thinking that will make them more productive, successful, or happy.Learning when NOT to do actually works much better!
Where does this come from?
For a long time, my northern star was to make the most out of my time in this world.I became obsessed with getting the most out of my time/health/energy while I still have it.For that reason (and because I love what I do), I was a workaholic.While I learned a lot during that time (essentially, I was living faster), I must admit that it was not always worth the effort I poured into that lifestyle compared to the returns I got.Aside from that, living that fast made me miss some good things I already had in my life.There are different reasons why we people get into this dynamic of never having enough in the name of professional progress:
The eternal promise of reward
Sunk cost fallacy
Psychological effect: making an effort causes satisfaction and a feeling of entitlement
Personal reasons: find shelter in doing, almost compulsively, (taking to the extreme BB’s advice: Better not to look down, if you want to keep on flying
Ego, plain and simple: I want to demonstrate I have more energy than the rest of the world!
Any other personal reason you can think of…
The key to escaping the psychological traps above is to start distinguishing two related but different concepts: effort and return.
The correct basis: focus on return, not on the effort done
First, let’s agree on a more straightforward way to talk about the critical assets of which any individual has a limited amount: time, energy, health, and passion. Let’s call these assets your gold.Making an effort means investing your gold.Secondly, a quick reflection: if you have a limited amount of gold, learning to avoid wasting it is an effortless and effective way of “being richer.”That’s what learning not to do is all about!Think of this: if you had to take a piano to a flat on the 20th floor, you could do it differently. You could carry it yourself up the stairs… You could use a hoist yourself or hire a move-in service… You could disassemble it, club the pieces in manageable lots, take it up, and reassemble it…The final result of getting the piano upstairs is the return, and the amount of gold you put into it is effort.But this post is about more than minimizing the amount of gold. This post is about asking yourself first: what’s in it for me to get the piano up there?It might sound obvious, but the only fact of considering something consumes a significant amount of gold, and more importantly: it opens the door to making the wrong choice about it.You can reduce the gold you invest to zero and avoid making bad decisions (much more gold saved), but it requires practice.Learning when not to do things (or even considering them) requires experience, knowing yourself very well (you are the best at fooling yourself), and asking yourself the right questions, for instance:
What’s truly in it for me?
Why do I want to do it?
What am I risking?
Will it go as I imagine it in my head?
...
You can apply this skill to any aspect of your life: professional, personal, social relationships…In this post, I will focus on the professional aspect, specifically for the software industry, so you can better pick your battles.
No, I’m not speaking against proactiveness!
Quite the contrary! Being proactive and doing stuff just for the sake of learning is excellent!That’s my philosophy, and I can proudly say I have applied 100% of what I have done for fun/learning in multiple areas of my life.But that is different from investing your gold in things that won’t have the return you expect them to!
Real-life examples
There you go, some short stories, all taken from experience in the software industry, where deciding NOT to do was the right thing to do!
Conclusion
Start practicing NOT doing, in a healthy way, not just saying no by default that would be going to the other extreme!Once again, this post is not about discouraging you from proactiveness!This post is about learning to identify rabbit holes that will give you nothing in return!Personally, I find that learning to do this spares you most of the professional pickles and the anxiety of those situations.At the same time, you will see it leaves much more room for other areas of your life, plus it helps you save your gold for when real opportunities deserving an extra effort come your way!
Enjoyed reading?
Leave your email and you will know when I publish new stuff! And no, no intention to spam you...
Quitting 9-5 and starting a company
My favorite one! No matter where you hear it, it sounds like a no-brainer!There are definitely positive aspects to starting something up: lessons learned, personal satisfaction, and, honestly speaking, you level up your professional game.But starting something up is mythicized nowadays. You don’t need to do an all-in, and rest assured, getting your own business to work will always take much more of your gold than your 9-5.I’ve worked on different startups, including mine; trust me.Ok, let’s apply the questions to this specific scenario:
What’s truly in it for me? Most probably, personal satisfaction
Why do I want to do it? In this case, this is the million-dollar question! Often it is just immediate relief because you are fed up with your job
What am I risking? Stability, health, finances, and even personal relationships!
Will it go as I imagine it in my head? Statistically, no
…
Given the failure rate of startups, people either don’t ask themselves these questions above or don’t give themselves an honest answer.Don’t take me wrong; I would get into a startup again, but I’d look at the opportunity more realistically!Hear YC’s Michael Seibel speaking about
NOT creating your start-up.
Enjoyed reading?
Leave your email and you will know when I publish new stuff! And no, no intention to spam you...
Mastering all the technologies
The most common mistake committed by motivated and talented developers!As funny as it may sound, buzz and fashion extensively drive the software industry! An example? JHipster framework.The difference between software and other industries like clothing, for instance, is that keeping up with the latest trends takes much time and energy (remember, your gold) instead of sheer money.Now, the question is: are you getting what you want by keeping up with the latest trends in software? I don’t think so!Apart from having some fun, your primary objective is to increase your employability or make your CV more attractive primarily.For starters, you won’t get to mastery by taking some courses (unless you want to become a Youtuber… lol).To master something, you have to work on a project with it, with real-world needs, which demands a lot of time and day has 24 hours for everyone, no matter how talented you are.So, we are back at the point of considering unnecessary sacrifices; this will be more expensive than you initially thought…Ok, let’s apply the questions to this specific scenario:
What’s truly in it for me? Placing some badges on LinkedIn, then realizing your mistake during interviews when you get real-world questions about those badges…
Why do I want to do it? Because I think it will enhance me in a certain way… But it won’t…
What am I risking? Depending on how deep you dive in, between much gold and your life as you know it…
Will it go as I imagine it in my head? Most probably not, unless you set out to start a fully-fledged project; you are just trying to boil the ocean…
…
For instance, I took the Scala Functional programming EPFL and got a 100% score, back when functional programming with Scala at the forefront was the biggest buzz… But then, apart from eventually solving a couple of silly bugs in a Scala codebase, I have never used it in a professional setup and have been rarely asked about it by recruiters!Curiously enough, I learned much more about functional programming (lambdas, high-order functions, pattern matching…) while working on ShopWindow using Javascript, although the industry said the hype for functional programming was with Java 8…Tip: software is much more about understanding all the questions, rather than wasting your gold trying to know all the answers...
Enjoyed reading?
Leave your email and you will know when I publish new stuff! And no, no intention to spam you...
Developing that new feature
While working on ShopWindow, I used to fail in the same pitfall every founder does for some time after launch: THIS feature is the key to success! I had the same thought every 1-2 weeks, leading to countless waste of gold…After 3-4 months, one starts to observe that there is absolutely no correlation between developing those key features and the increase in sales. Time to think about what’s wrong here…Fundamentally, the mistake was that making a product succeed is a lot about sales and marketing, especially at the beginning. But sales are boring and scary. By the way, here you are, one of my favorite sales for startups videos: How to Sell by Tyler Bosmeny.But fantasizing about how cool that new feature would be, seeing it working immediately in your head, and feeling excited about other people feeling excited about it makes you make the wrong decision.Ok, let’s apply the questions to this specific scenario:
What’s truly in it for me? *Entertainment masked as work
Why do I want to do it? Because it keeps me away from the scary thing: sales!*
What am I risking? My runway and my project
Will it go as I imagine it in my head? No! A single feature won’t turn an unknown product into a hit unless you do your sales homework!
…
In this particular case, I got into the habit of asking myself these questions while jogging, which usually gives me much clarity! It worked instantaneously: I didn’t implement a single additional feature unless a paying customer asked for it (and sometimes not even in that case).
Enjoyed reading?
Leave your email and you will know when I publish new stuff! And no, no intention to spam you...
Knowing when to stop
Over two and a half years in, ShopWindow was generating some hundred a month but no real traction beyond that.Some ideas to try, but they are starting to “burn muscle,” emotionally speaking.Additionally, while I wanted to build a self-service product, the most promising leads were enterprise ones, a path I didn’t want to explore, to be perfectly honest…I knew I did some fundamental things wrong, so a step back was needed to move two steps forward.But I just didn’t want to do it. Plain and simple!You will likely go through the same process if you ever run a startup.Whether you can afford to stop just like that is a different question…In my case, I could afford it, because I structured the company in such a way that I kept things easy in the chance I couldn’t take it anymore (e.g., no contractual traps).I asked myself the questions right away:
What’s truly in it for me? Save a boat I don’t care about anymore right now…
Why do I want to do it? A textbook example of sunk-cost fallacy…
What am I risking? Emotional and financial stability…
Will it go as I imagine it in my head? I know it won’t go as it should; I had the feeling of throwing gold into the toilet, almost literally…
…
Man… If you ever find yourself in a similar situation, stop it as quickly as possible!It is the right thing to do; it will be for good; the sooner you stop, the earlier you will start reaping all the benefits of the endeavor you got into and realize it changed your life for good and forever!Life will continue, and you will have other opportunities to do great stuff, but you’ll need your sanity for that! :)
Enjoyed reading?
Leave your email and you will know when I publish new stuff! And no, no intention to spam you...
Tool spotlight #1: Ngrok
(a swiss army knife for NAT traversal and endpoint exposure)
_TL;DR: I’m starting the tool spotlight posts where I’ll talk about exciting tools I find especially useful, I have hands-on experience with, and that are interesting from the software engineering/project/company standpoint, too.I intend to write beyond the technical angle, touching on the origin, history, project, and the company (if there is one) behind the project.Let’s get to it: let me introduce Ngrok to you!
So, what is Ngrok?
Software to make your computer reachable from the Internet very easily.If you are a developer, you know that exposing a machine on the internet has historically involved port mapping, SSL, some dynamic DNS services, dynamic public IPs, butting heads with your IT department to get nowhere…With Ngrok, all of that goes away with just one command! And it comes with some valuable goodies!It was created by Alan Shreve while working at Twilio, a company that publishes an API on top of Telecom carriers.Alan needed his machines to be reachable from the Internet to receive asynchronous requests and those requests to be faster, for that matter.So Alan got hands-on, started working on a solution to that problem, and called it Ngrok.
The problems and how Ngrok solves them
First off, what is the scenario, and what are its problems?If you are working in software, you are familiar with what N.A.T. is and that it has been around since the late 90s / early 2000s.In case you are not, NAT stands for Network Address Translation, the most common way to connect devices to the Internet in home and professional environments. When you connect your devices to the Internet, they are not connected directly to the Internet.Instead, there is an intermediate element (most often the router) that takes the traffic of all the devices, sends it to the Internet, and correlates the responses back to your machine.While different reasons justify this (historical IPv4 addresses are scarce, it is a convenient firewall), it imposes a significant restriction: your machine is not reachable from the Internet.
Although this does not affect domestic users, it is a big deal for software developers, as it breaks things like webhooks and notifications but blocks any traffic not initiated from your machine; it won’t let unsolicited inbound traffic in.
A bummer, right? Let’s see what Ngrok can do here.
How Ngrok solves this
Disclaimer: Although I’ll explain how Ngrok works, I don’t know it for certain, and I am doing this deliberately. The reason is that I find it way more interesting to make a reasonable guess based on my current knowledge than reading the documentation and rephrasing it here. Lastly, any correction is explicitly welcome!Below is how I think Ngrok works (broad strokes):
Roughly speaking, the Ngrok agent running in the machine behind NAT probably opens an outgoing long-lived TCP connection. Once that is in place, it is all about forwarding or tunneling requests within that tunnel.There are other solutions for this, like STUN or TURN, specific for interactive communication (e.g., maybe what WhatsApp uses? or maybe they do some sort of long-polling?). At any rate, Ngrok is a much more general solution for any use case, e.g., a server receiving webhooks exposing an IoT device.
Things you can do with Ngrok that you couldn’t (easily) do before
NAT Traversal
The most immediate pickle Ngrok solves for you is globally exposing local services running behind NAT:
You run:
$ ngrok http 3000
And now your service is reachable globally on (plain and SSL):
http://f4b52bcfae1d.ngrok.app
In the free plan, you get random domain names; in the paid plan, you can choose your static domain names, so you don’t need to reconfigure things.Alternative: Port Forwarding + Dynamic DNS + Static IP from your ISP. Costful, unreliable, and affordable in enterprise environments.
Deploy complex infrastructure
Let’s say you have several services listening in your machine, and you must expose them all.
You can declare the configuration in YAML; for instance, this is the configuration I had back in the ShopWindow days:
authtoken: XXXXXXXXXXXXXXXXXXXXXXXXXXXX
tunnels:
first:
addr: 3000
proto: http
bindtls: true
subdomain: dashboarddomain
second:
addr: 5000
proto: http
bindtls: true
subdomain: platformdomain
third:
addr: 8000
proto: http
bind_tls: true
subdomain: websitedomain
Now you spin it up by running:
$ ngrok start --all
Combine this with VMs and containers, with bridged connections using the loopback interface, and you could run your whole company’s stack (including 3rd party providers) from your laptop.
Alternative: see the previous point.
Inspect requests
You will always need to debug and be able to inspect what comes through the network.
But!!! In recent years, HTTPS endpoints have become mandatory for security reasons, and even some service providers are no longer supporting plain HTTP.
That means you are forced to use cyphered connections, and you can inspect them as you previously were able to with Wireshark or TCPDump 🙁 Bummer!
Not a problem for Ngrok! Your Ngrok agent terminates SSL, meaning you get back the plain traffic and can inspect it at will.
It is done through an excellent, clean web interface you can access from your browser:
And it looks like this:
Let’s do a quick test to see it in action:
So, what do we have here?
Highlighted in green, you see how the HTTPS endpoints announced by the Ngrok agent are globally reachable by the browser.
At the same time, it is an HTTPS endpoint, so it is up to the security standards the industry demands nowadays.
The pink highlights are the requests and responses received by the local listening service, which are inspectable through the Ngrok Web Interface.
As you can see, the browser requests are HTTPS ones, which means we should not be able to inspect them, but we are! That is because the Ngrok agent stars and terminates SSL for us.
Replay requests
One of Alan's painful problems was how expensive it was to generate incoming requests when he needed to debug his systems in terms of time and mental context.
Remember, Twilio places an API on top of telecom carriers, so each request results in an actual stream of events (hear him explain it himself here).
That problem happens to any developer (e.g., requests at the end of a payment flow), and even worse, your requests might cost you money (e.g., Maps or WhatsApp requests).
But Ngrok can access the incoming request so that you can replay it!!!
You might have seen that REPLAY button in the previous screenshot, and if you press it, it will just… Well, replay the incoming request :)
Although this is just a dummy example for you to see the functionality in action, it actually results in a considerable speed-up of the debugging process, mental effort, and cost reduction.
Alternatives: IF you have access to the plain text request (and that is a big if nowadays), you could tcpdump/Wireshark the network, copy the request, and paste it on netcat or telnet to your local service… However, we assume things like encoding and lower-level details are fine here, so this is a happy idea.
Show in-progress work
Ngrok enables local environments to use services usually available only on dedicated servers like dev or test environments.
For instance, a developer working with an eSignature 3rd party provider might not be able to receive the webhook notifications when the signature process is completed.
So, for that developer to show the functionality he or she is currently working on, it must first be deployed in one of those dedicated environments, with the overhead that implies (time, switching context, different departments involved).
Using Ngrok removes that process and allows the developer to have a realistic environment to both develop and demo the work in progress, linking to precisely the same systems any dev/stag/prod system would be linked to.
That removes the need to deploy the current changes elsewhere, significantly simplifying WIP demos.
Get rid of staging environments
Eventually, if there are no fundamental differences between local and staging environments, there is no reason for the latter to exist and can be skipped entirely.
When this happens, there is a significant reduction in costs on different fronts:
First and most obvious, there are fewer environments to create/maintain/manage, which is good news for the OPS guys.
Secondly, the conceptual distance between developing and releasing the code decreases.
For the same reason, the development cycle speeds up, as code will need one less jump to make it to production.
Devs are more conscious of the infrastructure they are working with, which is good.
Although this approach might not always be possible (depending on the size of the project and the team), I’ve applied it to some projects as an individual contributor, and it works like a charm.
You know when you hear the usual bullshit in your company asking you to be creative to speed things up and to work smarter? What this section describes is the kind of thing they would like to have.
Serve static assets globally in seconds
There's not much to explain here: you need to expose static files from your local with a globally reachable HTTPS URL.
Nothing magic as such, but it is a need that comes up frequently, and you get a complete solution with two one-liners:
Ngrok
$ ngrok start --all
Some webserver module, Python for instance
$ python -m SimpleHTTPServer 3000
Alternative: see NAT traversal alternative.
Quickly run tests
Recently, I wanted to confirm CSS in an IFrame was modifiable depending on the CORS policy.
For that, I needed two different domain names and an HTTP server.
I naturally thought of Ngrok, and with CTRL+R, I was running tests in literally seconds.
Alternatives: go to /etc/hosts, configure two local names, and run the Python one-liner from the previous point.
Opinion: why do I like Ngrok?
As a software piece
Technically speaking, it is an elegant solution to a common problem no one cared to solve from an individual perspective for decades.
Additionally, I am familiar with the problem Ngrok solves: when I worked at Solaiemes, we worked in a WhatsApp-like messaging service (RCS messaging, that's for another post), and in the early days of WebRTC for video communications, NAT traversal was an issue.
It is daring out-of-the-box thinking: tackling an infrastructure problem from an individual perspective allows a solution based on sheer simplicity.
Practical reason: the more I use it, the more problems it solves and the more straightforward it makes my life.
Small change, big difference: empower developers to act with global connectivity, with a simple command and forgetting about infrastructure or security.
As a software piece
Something I really like about software is that, unlike other engineering disciplines, it allows an individual to build a business out of a good idea by just solving a problem you have.
Although the software industry usually hypes out about unicorns popping overnight, moving trillions of dollars, and turning the world upside down, I typically prefer practical concepts developed by an individual contributor.
Don’t take me wrong, I like positive impact and reaching as many people as possible, but philosophically speaking, I prefer slowly cooked projects that become profitable businesses.
Ngrok is a perfect example of this.
It started in a very natural way: I’ve got this problem… There are solutions… Can I do anything better than existing things?
A very indie way to start: Alan started to work on porting LocalTunnel to learn the Go language and to have a sort of public resume (see it here).
It started as a side project and became profitable as a one-man-band company for a long time.
Demystifies what building a healthy and profitable software company is about, from development to promotion growth.
For instance, this simple promotion technique, coming from a software engineer (no marketing guru), worked really well: pay what you want or spread the word.
Further reading/watching/listening
I prefer to keep things nice and short, so if you want to know more, there you go some resources:
Alan’s website: https://inconshreveable.com/
A post I liked: https://inconshreveable.com/09-09-2014/sweat-the-small-stuff/
Ngrok as a project at Twilio’s signal: https://youtu.be/F_xNOVY96Ng
Enjoyed reading?
Leave your email and you will know when I publish new stuff! And no, no intention to spam you...
Hotels, aggregators, and letting customers down…
_TL;DR: I booked a room through Expedia, their app misbehaved and no one (Expedia, Hotel) took responsibility for it, leading to negotiation and the revelation that in the aggregator business model, we customers are screwed by default!
Seville is always beautiful, but easter is one of the best moments to visit the city!
Perfect temperature, the whole city in the streets all day long, everyone dressed very classy, the religious tradition is alive in the streets and people follow it passionately!
The accommodation was still pending so I booked it on the go… That’s where problems started!
I started by googling the search and of course, aggregators like Expedia, Booking, Trivago, and the like hogged the first results page.
Instinctively, I tapped on Expedia and I was taken to their website, where I selected the very night for that day. Quickly, I was asked by the website to continue on the Expedia App instead, with not much room for continuing on the website anyways.
At that point, inadvertently, the app seemed to lose some context selecting a different date for the booking, resulting in a mistaken reservation.
Nothing dramatic so far, technology misbehaves from time to time, but it makes modern life so convenient too, plus, you’ll always have someone on the other side to solve the situation… Won’t you?
Not quite… Let the show begin! 🤦
Hotel’s take: there is nothing we can do…
While checking in upon arrival, the confusion became apparent: the reservation was for the Monday right after the long weekend.
Although this was a pretty simple situation to solve in my head, and the hotel had the kindest words, it quickly became clear they weren’t willing to help:
Frank: We could bump the reservation from Monday night to tonight, paying for the difference of course!
Hotel: We cannot do that!
Frank: Ok, we can cancel the booking for Monday, we get a refund, and we book the room for tonight!
Hotel: We cannot do that!
Frank: Ok, what can you do?
Hotel: <Useless rambling about things being out of their control here, just to feed me up>...
If you wanted to be able to cancel the booking, you should have paid the cancellation insurance!
Frank: Well, I think it’s unfortunate for you to say that… We both know:
- This situation has been caused by Expedia
- That insurance is to be able to cancel at will on far away plans, not to solve Hotel and middleman’s mistakes…
Hotel: Well, I don’t know what else to tell you…
Frank: How about you tell your customer, me, you are going to find some way to help him? Can I please speak to your manager?
Hotel: There is no manager…
Frank: I see… So, you are telling me a 10-fold hotel in the center of Seville during easter is entirely managed by a 20-year-old… Meaning, if someone dies from a heart stroke on the hall, you are the one dealing with the whole thing, alone, right?
Now this is starting to annoy me…
At that point, someone in his thirties in a suit tries to quickly sneak out of a cubicle to a backdoor, but I addressed him directly and he couldn’t leave without being rude anymore…
Frank: Hey, nice to meet you, can you please help us here?
Hotel manager: Hello sir, I’ve heard the whole conversation and there is not much we can do, this is in Expedia’s hands!
Frank: Ok, that is different from “no, no, and no” from a moment ago… And might even make sense!
So you are telling me that I should be dealing with them…
Hotel manager: Yes! By now, the hotel does not even know about your reservation!
Frank: Ok, I’ll take your word, but it feels strange that Expedia does not notify you guys of a completed booking right away, it goes against your planning…
Still, I’ll give that a go! 🤔
I booked another room (with no refund in sight yet…) and contacted Expedia’s support right away.
Guess what? 👇
Expedia’s take: there is nothing we can do…
As you can see in the screen recording on the side, showing the conversation with Expedia’s support team, whether to issue the refund or not was totally on the Hotel!
Although this was not surprising, it was outrageous as a customer.
In order not to ruin our experience, we decided to start taking all this with a bit of humor. There was still a pickle, and we still had to solve it, but sometimes, knowing when to laugh a bit at things, helps relativize and yields much better results!
Although we needed accommodation for the next night, at that point we honestly didn’t feel great leveraging that and getting into more negotiation… We were on vacation!!!
We showed the conversation with Expedia to the manager on our way out for dinner, proving the ball was totally in Hotel’s court and that we wanted a solution for that before checking out the next day!
Not only did they not provide any solution, but they lied to our face!
The manager could see the situation was worsening and gave himself away as we were going through the exit gates: … if you considered staying for another night, there might be something we can do about this situation… Additionally, I’ll match the best price you find on the internet for tomorrow’s reservation!
The ugly truth
So it was all about making money out of the situation, not helping the customer…
Expedia has your money, but won’t release it!
The root cause of the whole thing was a glitch in their app, it was reported right away and the booking was days away…
In other words, no gain in them retaining your money (apart from them hoping to exhaust the customer and just keeping it) and a pretty important loss: an unhappy, outraged customer.
While I understand refunds are probably something delicate to deal with, it is clear that the process protects the business, not the customer.
It is something that does not happen in other industries and should not happen in this one either: if you buy a car and it has a defect, the dealer won’t tell you to go ask the factory for help, right?
The hotel has control over your money, and won’t release it either!
I guess if I didn’t chase this, time would go by and the hotel would just get the money for accommodation that was never used.
But there is something worse: up to the accommodation date, they have control over your money and they can use that for good or for bad.
Using that for good: an error happened on the system, the customer won’t use the service, no loss on our end, let’s help the customer sort this out.
Using that for bad:
• We can keep your money just cause
• We will leverage that to our benefit
The Hotel used it for bad: the image☝️shows a note the manager on the night shift left for the staff on the morning shift, which says 👇 literally:
(Room) 218Expedia issue
• If they stay 4/8 (the next night) and we authorize the refund
• If they don’t stay 4/8, no refund, if anything, rescheduling the booking
Of course, the staff did not show that note, I politely picked it up from the manager’s hand, I would have never seen it otherwise…
This looked more and more like playing poker!
How this got solved: Bargaining
So, all the “no, that’s impossible”, and all the “we don’t have your money” bullshit, could disappear if we just spent more money, in a hotel that inspired zero trust at that point.
Modern, digital stealing… But as said before, sometimes taking things with some humor, helps you see things more objectively.
We took the manager’s word and found the lowest price on the Internet for that hotel, and guess what? We found something 20% cheaper than the aggregator’s price on the Hotel’s website!
That together with the refund they would be unlocking, resulted in a pretty good deal!
So, if we decided to stay for another night, monetarily speaking, it wouldn’t be a bad solution for us, but:
• What if we had different plans?
• What if we just didn’t want to stay in that hotel any longer?
• What about all the hassle we had to face to get to this point?
• ...
We had to chase all this to find good mitigation and not be screwed by default.
So, finally, we sorted the situation out and it almost felt like a victory after all!!!
Playing it cool, of course...
As said, taking things with humor is vital... Better to laugh!
So the hotel lied shamelessly and Expedia sells it as their victory when it was we who actually solved the situation... 🤣
Hotel 👇
Expedia 👇
Takeaway
For customers, there is no advantage in using aggregators.
Today, aggregators solve the promotion problem for service providers (hotels/flights/cars/…), but at the cost of letting the customer down if something goes wrong (and things go wrong often).
For them to be fair to customers they should either take responsibility for the transactions they facilitate or make a significant cut on the price, otherwise, what is in it for me to use them?
I’ll start systematically avoiding aggregators from now on:
• Prices aren’t good
• They take zero responsibility for the services they sell to you
• You are screwed as a customer: if life happens, you are defenseless
• Who wins and who loses
○ Win:
‣ The hotel: customer stream from the Internet
‣ Expedia: fees the service provider
‣ Google: on search, maps… The first 2 result pages in Google are exclusively aggregators. They participate in this.
○ Loses: you, the customer
Movies I liked, and a little sip of them...
It's a long time I firmly believe always takes over fiction...And in my opinion that is something Tarantino wanted to capture with this movie: fiction showing how fucked up reality can get!Man, he achieved it!Other than that, you'll hear smart dialogues about interesting (in my opinion) topics, like: could massaging someone else's wife's feet be possibly taken as something innocent or not?My favorite moments: are Samuel L. Jackson exposing why he is quitting the mob to let the Lord guide his life, Uma Thurman going from femme fatale to fucking things up big time, or the Gimp scene 🎬Priceless begin to end!
I am a fan of Guy Ritchie's movies. The first one I watched was Snatch and I still laugh my ass off seeing Brad Pitt play a gipsy.Of course there are other great ones: RocknRolla, Sherlock Holmes... But Snatch is one of a class for me, definitely!Now, The Gentlemen is for me the proper successor of Snatch.Original, authentic, hilarious and perfectly put together!It will captivate you from the very first scene, even for the theme during the intro: Cumberland gaps 🎬
This one is a hidden gem! 💎An amazing cast to tell a sadly-true story: 2008 financial crisis...Before watching this movie I was sure The Big Short was my favorite to tell that story. Now it is a draw in my head!The tension, a perfect depiction of the seriousness of the situation and flawless dialogues will embed you directly into one of the most important financial crisis in recent history.Aside from that, in a subtle manner, this movie resembles a lot of the spirit of this blog: bullshit has its limits!There you go two of my favorite scenes:* The initial emergency meeting* 🎬The Senior Partners meeting 🎬
Being this the site of a techie, this one is a must!Probably as much of the real story about the legendary battle Apple - Microsoft you are going to get by just watching a movie.It was produced well before the iPhone era which is what ultimately turned Steve Jobs into a god for a bunch of fan-boys worldwide.It won't disclose facts like Bill Gate's mom was on IBM's board and she played a role in her kid's success... But still, I have the impression it paints the picture nicely.The scene where Steve Jobs puts his bare feet on the table and crushes an interviewee 🎬 getting personal is pretty good and probably descriptive of what the guy was back then.