Flight
Episode 27: 31/10/2023
??
We've been stuck in the final boss fight for five months and it just won’t die.
?
The boss fight is a video game concept where, having defeated legions of underlings, you must defeat a much stronger enemy. In our case, the boss fight revolves around finishing the payment processing for the El Toco search engine's website.
?
Boss fights are a real chore. In every case, it boils down to figuring out the attack patterns and chipping away at the enemy until the game calls it a day. But boss fights are also stressful. If you face a lot of stress in your day job, it is often not how you want to unwind.
?
It is particularly not how I want to unwind, after all the other challenges we’ve faced in getting El Toco this close to launch.
As of today, you could technically argue that we are already launched. We're now in October and the search section of the website has been continuously online to the public since August. But it's not the real launch until the advertising section goes live too, because we can't make any sales. I've been stuck in the fight with the payments processing since June, and everything, literally everything, depends on killing this final boss.
So why is it taking so long? It is a good question, and one my investors have asking too.
??
?
Just as shops have those little machines to read credit cards, websites have payments processing companies. Payment processing is not rocket science. But, in the process of just placing one order, there's an enormous number of scenarios that can happen.
If this final phase of development is a boss fight, the attack pattern of the boss is to wait until that exact moment when you breathe a sigh of relief, thinking you’ve handled all the possible scenarios. Then it springs another load on you.
?
For example, you'll suddenly ask yourself: what happens if a card was initially ok, but has expired a month later, when the rebilling date arrives?
?
Let’s see. You’ll need to notify the customer, deactivate their adverts, and stop the payments processor from trying to bill the dead card. Oh, but then, the customer will need a way to update their credit card details, so that they can reactivate their adverts.
The onus is on the website owner to do all this. While not conceptually difficult, it involves reams and reams of code, shuttling messages back and forth to the payments processor, pinging off emails to the customer, and updating various databases. It's the easiest programming of the entire seven year project, but writing it all takes time.
?
Since the investors came on board in 2022, they've faced a succession of launch deadlines, all of which we've failed to meet. November became May, which became October. With each failure, I lose a little bit more face, and by now I'm making Batman villain Harvey Two-Face Dent look like a reasonably healthy guy. I really don't want to miss the current deadline of Halloween night.
That is to say, tonight.
?
In just the last few days, the to-do list has dramatically shrunk to virtually nothing. It is now 6pm. I've been working for about twelve hours. The final bugs, which were there when I got up this morning, have all been squashed. There are no more unhandled payments scenarios. Could this be it? Really it?
The advertising section of the website just came online. Anybody in the world can now visit and use it. But it is not done.
One final task remains.
?
That task is to put through a successful test order, using my real credit card.
?
Pretending to be an advertiser, I create an advert. I get to the checkout page and nervously type in my card details. I click on Pay Now. The website provides a congratulatory message, saying it’s worked.
?
But after a few minutes delay, the payments processor is pings back an error message. The payment failed.
?
The last minute failure
?
?
Why? Why is it not working?
?
This is obviously not the first test order I’ve placed. The payments processor gives you some fake card numbers so that you can test without real cards. I’ve done literally hundreds of tests in the last few months.
?
Something is going wrong when switching from the fake cards to my real card.
?
My girlfriend comes home. She knows about the deadline and bursts into the room excitedly to ask if it’s done.
?
I’m sitting there, in the dark, staring intently at the screen, trying to work out what the blazes is wrong with the test order. Does it look like it is done. She is bundled back out of the room in short order.
?
As anyone who has ever been interrupted knows, you don’t just instantly return to the state of full concentration again. I spend the next half an hour flitting back and forth between the website log files and the payment processor’s error messages, trying to figure out what they’re saying.
?
What they’re saying is “Error - payment declined”. It’s not really much to go on.
?
The payment processor is a nice company and their technical support is very good. However, they come from the Amazon school of customer service. Meaning that, although they do eventually solve tickets, it is generally 1-2 weeks before that happens. If I raise the issue now, it could be a fortnight before it is solved.
?
Dejectedly, I send them brief email asking if they can shed any light on the declined payments.
?
That’s probably it for today.
?
I go for a lap of shame around the inside of the apartment and bump into my girlfriend, who asks hopefully if it is done yet. No, it is not done yet. Nor will it be this week, now.
?
I pour a glass of water from the fridge and stand in silence, thinking. It worked in the test environment. The website thinks it has worked. Therefore, it must be something specific to the production environment, specific to the payment processing.
领英推荐
?
When going from the test environment to the production one, the only change you make, as far as payment processing goes, is to swap the authentication keys.
The authentication keys are strings of random letters and numbers, which you paste into your website's source code. They work like a password to tell the payments processor that requests from your website are genuine.
?
To swap the keys, all you do is paste the new ones in. Maybe I just didn’t paste them properly.
?
It’s a long shot. You get pretty good at copying and pasting when you work as a developer. It’s unlikely I committed an error this monumental on the newbie scale. But, just for the sake of thoroughness, we may as well check.
?
I finish my glass of water and go back to the computer in the darkened room. With very low expectations of success, I find the authentication keys for the production environment and paste them into the website code.
?
With very low expectations of success, I then go through the motions of placing a new order using my real credit card.
?
The website thinks it’s worked, but we already know not to trust the website.
?
I go to the payment processor’s message log. It takes a while for messages to appear here. As the clock reaches 7pm, I refresh the page.
?
A new message appears. It says "payment successful".
?
The website is fully online.
?
We did it.
?
I go back into the living room and ask my girlfriend if she fancies going out for dinner.
One last meal is waiting for us, at the end of a seven year journey.
?
?
Le Pekin
?
I put on my coat and some battered shoes and we leave, locking the door with excessive care because my hands are trembling slightly. Rather than happiness, I'm in shock. The effort to reach this point, and the sheer quantity of things that have happened on the way, make it difficult to grasp the concept that it is all over. The notion that tomorrow I won't have to get up and launch El Toco, like I have every other day for the last seven years.
It is night. Night in Lille means that you have to tread the pavement carefully. A lot of people bought dogs during the pandemic.
?
As we hopscotch our way down the dark road, I try to come to terms with the immensity of what just happened. I mean the launch, not the dogs. Although the dogs have been doing their own launches, which have prompted local residents to spray paint signs on the pavement, beseeching them to stop. But dogs can’t read. Nor do they understand symbols, it seems. Barely five minutes have passed since reading the success message on the computer, and my body is still in combat mode. The adrenalin from the final boss fight will take hours to wear off.
?
One thing that I am fully aware of is that this specific walk is the last mile of the seven year journey I have been on since that summer evening in 2016, when I stepped out of Dirty Dick’s pub in London.
?
It is a journey I can never repeat, and a story I will remember for the rest of my life. It is the story of my thirties.
?
Some scaffolding blocks our way. It has been there since I first arrived in Lille, supporting a house that is slowly collapsing. We navigate the scaffolding in silence. Neither of us speaks.
?
It is the story of my thirties, but was it worth it? I return to this question yet again, on this final stretch of the way.
Random memories replay, from all the places I have lived and things I have done during these long years. The picturesque streets of Lille on a sleepy Sunday afternoon. Coffee and cake in the genteel University of Greenwich café. Crabs, dancing across the volcanic sand on Colombia’s Pacific coast. There has been danger, excitement, beauty. I have definitely lived.
But the cost has been high. Life would have been a thousand percent less stressful had I stayed working as a financial analyst in London. With a stable career, however tough it gets, the paycheque lands in your bank account and you know that somebody, somewhere, appreciates what you have done. When you're the founder of a pre-revenue startup, you get no such validation. I've been chipping away every day for seven years at something that nobody can see and might never appreciate. Things have reached the tipping point where we need more employees but without them I have almost no free time, and even less energy to enjoy it. As wealth transfers inexorably from me to the company, my quality of life has dwindled. In the supermarket now, basic ingredients like sweet peppers are often so expensive we don't bother buying them. It's not exactly the entrepreneurial dream.
These are obviously not real hardships but the one thing that is sad, probably because it is irreversible, is the number of people who have fallen out of touch. In London, at the beginning, there were so many happy faces to wave me off. While working on this project, I've met many more. But the pandemic stopped travel. There wasn’t enough energy to keep in touch remotely. There wasn't enough time to meet physically. Most of them are gone now.
We cross the windy bridge that separates Lille’s town centre from the suburbs. Even here, you need to keep an eye on the ground for dog-related activity. As other pedestrians have learned to their cost.
The final answer, as to whether or not it was all was worth it, depends on what happens next.
?
Now El Toco is alive, the plan is that it will foster an ecosystem where more people find, use, and create websites. It will provide an escape from the handful of mega-platforms that dominate the internet today. For consumers, that escape means more choice. For smaller businesses, it means more visibility. For everyone, it means more freedom.
???
However, there is one challenge left. Getting people to use it.
?
I know this is the hardest bit. So do El Toco’s investors. That is why there is no launch party. That is why, after such an odyssey, tonight feels like an anti-climax. In the scheme of things, we're just getting started.
?
?
But, for tonight, we have arrived. Le Pekin is a Chinese restaurant that we’ve wanted to try to for a while. It looks rough from the outside. The real city is not even called Peking any more. But London and Hong Kong have taught me that you can’t judge a Chinese restaurant by its cover. Unfortunately, our friends in Lille do not share this view, so the suggestion is laughed down every time we make it. But tonight there are no friends, so nobody can stop us from taking this culinary gamble.
Creating El Toco sounded simple on paper back in 2016 but in reality has been anything but. This blog is an attempt to preserve those ups and downs. Many people have more impactful careers. Many lives are much more thrilling. But this has been my story. I hope you have enjoyed reading it.
?
A sign in the window says they accept our discount card, so long as the meal costs less than €30. We study the menu. My brain is too frazzled to absorb the details, but the prices look okay.
?
Before entering, I catch my reflection in the door of the restaurant. An older man than I think I am looks back, tired and unkempt. I blink to get the image out of my head. Hopefully there’s still time left to live life. I glance at my girlfriend and try to smile reassuringly. She tells me to stop mucking around and go in. I square my shoulders, push the door open and step inside to meet with destiny.
Soft skills trainer at Lorvens
3 个月Good evening sir I'm recruiter for which requirement you wnt plz tell me
?? Launches + funnels that feel good and fill your wallet?? I help coaches, course creators + badass CEOs make more money from their digital offers, with creative launch strategies that leverage their unique strengths
3 个月So proud of you for getting it out there! What a BEAST of a journey. I remember when you first told me you were planning to launch a search engine and how determined you were. And you freaking did it!