Going cycling for a long ride

A while back I’ve shared my list for getting ready to cycle long-distance on the Facebook group called Solitary Cycling.

The comments were a mixed bag. From people who enjoyed my list and thanked me, to people who had no idea what long-distance cycling meant and thought I should “just ride” and improvise if something happens.

The reason I made this list is because I don’t want to improvise. When I go for a ride, I don’t have the luxury to be stuck in some place for hours. I have a family and some responsibilities and I need to get back home, more or less within the time I allotted.

So here is the list:

  • Charge Di2
  • Charge front light
  • Charge second front light
  • Charge rear light
  • Charge second rear light
  • Charge HR monitor
  • Charge bike computer
  • Charge phone
  • Put some oil on the chain
  • Check tires and tire pressure
  • Check brake pads – change them if necessary
  • Check saddle bag content
    • 2 x CO2
    • 2 x spare tubes
    • 2 x tire levers
    • Credit card
    • Cash
    • 4 x gels
    • 2 x energy bars
    • 2 x electrolyte
    • 4 x zip ties
    • First aid kit
    • Park took Multitool
  • Fill up water bottles with isotonic and hypotonic
  • Build the route on Komoot
  • Upload the route on the bike computer
  • Dress up
    • Butter up with Chamois cream
    • Bib
    • Jersey
    • Wind fleece
    • Rain fleece
    • Boots covers (optional)
    • Gloves
    • Helmet
    • Beanie if it’s cold
    • Glasses
    • Check that cleats are tight
    • Boots

Training for Paris Brest Paris 2023

The first thing I’ve been doing for training is to tell everyone I know about my plan. I want to build a lot of peer pressure so I feel accountable.

Given how crazy this project is, I am pretty sure nobody would be really sorry if I wouldn’t pull it off. But some people believe in me and I wouldn’t want to disappoint them!

The overall plan is the following:

  • Winter solstice 19-20 Dec 2020 – 150km minimum
  • April – start of Rynkeby cycling season
  • July 2021 – Going from Travemünde to Paris – 1200km in 6 days
  • August 2021 – 300km
  • September 2021 – 400km
  • October 2021 – 600km
  • 2022 – Maybe Ruska. But it’s 2000km, and that’s a lot…
  • 2023 – Super Randonneur series to qualify for PBP
  • August 2023 – Paris Brest Paris

Rynkeby, here I come

In August during a ride, my buddy Karl told me there is this bicycle team that orders a lot of bicycles, and joining them would be a guaranteed way to get a nice bike for cheap. I was not really excited because the team orders Bianchi bikes and they are not my favorites. Not sure why to be honest, but probably has a lot to do with the color.

A few days later, my sister-in-law Jenni tells me about the same team but then she tells me about the whole story.

Rynkeby is a very special cycling team. It’s a charity team who’s goal is to cycle to Paris in France while collecting donations for children with cancer. The team is not made of the fastest cyclists on the market. It’s made of 50/50 men/women, old and young, all kinds of socio-economic backgrounds. To qualify, one has to be a team player, to be motivated by the cause and of course be able to cycle, a lot.

I joined the Helsinki chapter so we are starting from Finland.

From Helsinki to Paris, there is about 2200km. We’re going to cover parts of that route by boat. From Vuosaari to Travemünde in Germany. Then from there it’s 1200km to Paris that we should cover in 6 days. About 200km per day.

With the COVID-19 situation, the team didn’t get to cycle to Paris in 2020. So instead they went around Finland.

Registration

When Jenni told me about this opportunity, it was the day the cut-off date for registrations. So I thought I would just register without thinking and then see what happens.

The pre-registration took a few minutes, answering a few basic questions. Quickly after that I received an email asking for more details. And then everything went very fast.

The details were mostly about my motivation and what I thought I could bring to the team.

One has to write a cover letter explaining their motivations, how much of a team player you are, how you could potentially help with finding sponsors and what the cause meant to you, and your level of cycling.

I filled up the form and the next day I received a confirmation that my profile was interesting, along with an invitation for an interview. The interview was the following week.

At this interview I met with Lassi. We spoke about life and why joining Team Rynkeby. It went very fast.

A few days later I received an email saying I was accepted in the team and all I had to do was pressing a big fat green button that said “I accept” (or something like that, can’t remember for sure.

By that time, I was really impressed by how well oiled the whole organisation was. Nothing chaotic, very clear, to the point and just working.

Having created and running rugby tournaments and other associative initiatives, I know very well how difficult it can be to run smooth operations with volunteers. So I was all the more impressed.

Getting the bike

Joining Team Rynkeby means committing to a few expenses. We do collect sponsorship from companies across Finland, but we have to pay for our own expenses. All the money collected by sponsors goes straight to the two foundations we are supporting.

Sylva and Aamu Säätiö

Out of the 2000+ riders, everyone is riding with the same yellow Bianchi bike. And it’s a really good deal. The retail price for the bike is around ~2200€ and we are getting it for ~1400€. It’s a Bianchi Intrepida carbon frame, with Shimano 105 groupset. The wheels are entry-level Shimano RS.

Instead of buying a new bike, I did as usual and found a second hand one. A bit after joining I got my hands on a spreadsheet with contact details of people who were selling their bike from previous years. Tero (who is the famous vlogger of the team of 2020) sold it to me for 1200€. The bike is pretty much spotless. Not a crazy good deal but good enough and the satisfaction of putting more kilometers on a good bike, rather than letting it rot somewhere and buying a new one.

Fast forward one month

The team has met many times already in the past month. We’ve gone through a few walking trainings, usually around 15km at about 10min/km. We’ve done quite a few spinning sessions as well.

I must admit that the language is really a significant barrier for me to contribute more and to get more out of the whole experience.

During the spinning sessions, I get some of the instructions, but not always. Luckily, Heidi, our in-house spinning instructor, gets me the program beforehand so I have an idea of what’s going to happen.

I’ve learned already quite a lot about myself and what I am capable of. But I am really eager for the spring to come so we can get on the saddle and see these yellow bikes in their natural habitat. Also really interested to see what the team will look like on the road. I’ve been always interested to see how it’s like in a team that work well together, where everyone is committed and we all care for each other.

In some ways, this is very similar to Rugby where we have to care for and protect each other. Very much looking forward to see this in action.

How to get hired at Smartly.io

EDIT: I have been now working at Smartly.io for 5 years. Going from 40 employees to more than 400 today. My mission today is to scale the way we do customer support to the next 1000 employees.

Our ways of hiring have changed a lot. The story below is not really a good reflection of how things are working nowadays. You can read it for your entertainment and some inspiration, but don’t try this at home…

############################################################

What is Smartly.io

Smartly.io is a fantastic company. We’re the leaders in Facebook and Instagram advertisements. Our growth rate is through the roof and we keep innovating in order to delight our customers.

The Facebook ad ecosystem is built around a terrific concept. Facebook is providing Power Editor and Ads Manager in order to build ads. This is the baseline. If Facebook Marketing Partners (FMP) like Smartly.io want to exist they have to provide a service that is far superior to Power Editor for marketers to even begin to start considering to pay to use their product. If an FMP is providing a service that is too close to what Power Editor is doing for free, there is no reason to invest.
At Smartly.io we proud ourselves of being the first ones to release new ad formats. Our team of engineers is working their b**** off to stay ahead of Facebook. The rhythm at which new features come out is purely insane and it’s very hard for any company to keep up with that.
This is why we like to stay very humble. Aware that one day maybe we could lose our grip like some of our competitors have done already before.

At the same time, we want to grow. And we want to grow fast. There is an attitude in this company that is truly interesting. We call ourselves humble hungry hunters.

So if you want to get hired you need to prove that you have what it takes to call yourself “humble hungry hunters”.

Let me tell you my story.

In June, my dear friend Claudio one day told me about Smartly.io. Claudio was in Lithuania, struggling to make ends meet with a startup that we co-founded and from which I was already out. Claudio was asking me what I was thinking of this company and I very quickly understood that it could be the perfect place for me as well.
After 9 years spent at Nokia, it was time to go.
So I applied for the position of Technical Account Manager. The description suited me pretty well and I thought I had a decent chance of getting hired. I was genuinely interested in online marketing, being a former instructor for top mobile operator engineers I thought I was a fast learner and from a technical point of view, I was also pretty well qualified.
In the meantime, Claudio got hired which got me really excited.
I realized from the job posting that AngularJS was a cornerstone of the product (Edit: now it’s more React.JS) so I decided I should take an introductory course in order to understand what that was. I followed the course, took all the tests, and validated all the modules, one after another.

Let’s get started

I also had to solve a small technical puzzle which led to finding the email address where to apply. It was kind of a technical position so it was only normal to have at least a basic technical test… It took me a few hours, some loops, and some curl to figure out the result of the test and then I sent my application.
I got an answer from Joonatan and I was happy to receive homework to complete.
Having two kids at home and seeing the amount of work to be done to prove my worthiness was a bit daunting at first… but luckily my wife helped to make time for me to study.
The homework was an interesting case. An excel sheet full of statistics about an advertisement campaign. The task was fairly simple: optimize that. We want to spend more and stay below a specific CPA.
So here I go studying Facebook advertisement, the blueprint, the blog posts of Smartly, one after another, what’s a bloody CPA? CTR, that I know. I have an email marketing background, very helpful! Conversion? Offsite conversion… Remarketing? Facebook Pixels? Lots of stuff to learn. I submit my homework and Joonatan finds it good! 🙂
But now I have a big task ahead. Demo Power Editor to a bunch of guys who know it inside out since Smartly.io is constantly benchmarking against Power Editor and appear as if I would know it inside out as well. The next task right after that was to demo Smartly.io as in a Sales pitch.
I have done some Facebook ads before for the French version (yaentrainement.fr) of the very famous Finnish Website nimenhuuto.com.
After spending some money to direct some traffic from Facebook to my site, I realized I was not going to put myself in the best conditions for nailing the demo. I was supposed to demo an e-commerce website and all I had was an online service. So what’s the best way to learn? Probably by doing. So here I go set up a shop on my blog.

Really want to get hired? Here is the interesting bit

The blog is running on WordPress. I install woo-commerce, set it up, play a bit with Photoshop to make some fake products, mainly Nimenhuuto t-shirts (maybe I should think about selling these t-shirts), install some pixels.
Then I thought I should take it the extra mile and go for the advanced feature rather than stay safe and only hone the basic features. If I want to get hired I need to shine and I know for a fact that most people don’t go for the advanced features because they are 1) lazy or 2) afraid. Not afraid, lazy… maybe sometimes… but I’m working on it.

So I set up a product feed using a paid plugin that has a demo version. I set up my feed on Power Editor… but then comes the problem of fixing the pixels for DPA. a bit too tricky for me. I reach out to the developer of the plugin and ask him for an extension of the trial period and for some advice about the pixel. I get an extension and a piece of code in order to do the trick.
DPA is running on Power Editor. Now let’s see what Smartly.io can do for me…
I set up an Automated Ads campaign with a carousel and with my products. It’s working well. Very easy. I couple it with Dynamic Image Template in order to enrich the pictures of my product feed with data from the feed like a price, a description, a brand, etc. I need to ask Joonatan to turn on several features for me as many of them are advanced features that are only available to very advanced users and enabled by Account Managers.
D-Day is coming. Let’s get sharp and show that I master the topic and that I can do a good demo.

Interviews

I meet Joonatan and Joonas, and I do my Power Editor demo. All good they like it and we proceed to the Smartly.io demo. Same stuff. (happy face)
I am invited to come back to meet Anssi, COO of Smartly.io. A couple of days later I am having lunch with Anssi and the interview is going pretty well. Then a quick interview with Kristo, the CEO. Culture fit detection: passed 🙂
Next step, interview with the technical guys. Otto and Arto. Otto is the VP of Engineering and the creator of the amazing tool Flowdock. I am a huge fan. Because of that I actually decided to include Flowdock in my CV. And Arto is the Product Manager of Smartly.io. Same stuff, good interview. I’m confident! 🙂
It’s Friday and there is the usual Friday demo. An open session where some externals are invited to come and discover Smartly.io a bit more.
I follow the demo as an external and I am actually just waiting for an answer… Are they going to hire me or not?
No answer yet. I get back home. Waiting for an answer. At this point, I have been visiting Smartly.io about 7 times, been to a few demos, met with plenty of people, spent days/weeks studying. The investment was consequent. But Sheryl Sandberg COO of Facebook once was told: “When you’re offered to get on a rocket ship, don’t ask what seat, just get on”. That was my attitude all along. I said yes to whatever requirement. Invested all my energy into that hiring process.

The answer

Later during the evening, I receive an email from Anssi:

“We discussed internally, thought about your background and potential regarding the positions we discussed, and unfortunately decided not to move forward with you. As we have communicated, our bar is really really high. We really liked you and you presented good skills, but we’re looking for a “perfect match”. ”

I was disheartened.

But then I thought: Sorry but I don’t take no for an answer.

“I understand your decision but I don’t accept it.
You know I have a lot to give. Let me prove it to you.
Can we speak about it?”

Kristo answered me and we agreed to meet again in August after the July holiday was gone.

The comeback

I came back. I demoed again. Got some help from Claudio to help me learn the roped. Fine-tuned my demo. I was supposed to be also a bit of a video guy, so I made a kick-ass education video. I literally worked my way through the meanders of the hiring process. I went there with a knife between my teeth. Pushing, pushing, I wanted so badly to get hired that… it eventually worked. Maybe I am a hungry hunter.

Anssi made me an offer which I accepted. And I know for a fact that he really wants to make many more offers… but the bar is really really high and we are looking for a “perfect match”.

Today I am not quite doing the job of a Technical Account Manager. I do a lot of Business Development for the French Market. I do videos for marketing purposes. I do support like everybody else in the company. We are all full-stack. I saw a Rocketship, got myself invited, and jumped on board.

This may not be the only way to get hired at Smartly.io. Everybody has a different story. But the common ground of all these stories is that the individuals hired have a solid drive and a humble hungry hunter attitude.

How about you? Do you have what it takes to get hired at Smartly.io?

Video games and learning new words

Just saw a great video from Pr. James Paul Gee from Arizona State University.

When learning new words we need to have an image, an action, something tangible to associate to that new word. If you have nothing but a synonym or a definition or even a translation, you don’t really grasp the meaning of that new word.

In order to understand this, go to a video game shop and buy a brand new video game. Go home and start reading the manual. See if it teaches you to play the game… You will most likely not understand anything this is about. It will like a sequence of unrelated words with no meaning whatsoever.

Then start playing the game for some time.

Take the manual again and start reading. You should be able to understand everything it says. That’s because you can now easily associate the words on the manual with the actions you’ve just been performing.

how to automatically blacklist unsubscribed emails on interspire email marketer

Simply create a trigger which will insert unsubscribed users in the blacklist after every update on the subscriber table.

FOR EACH ROW INSERT IGNORE INTO ya_banned_emails 
(emailaddress, list, bandate)
SELECT emailaddress, ‘g’, UNIX_TIMESTAMP( ) 
FROM iem_list_subscribers
WHERE unsubscribed != ‘0’;

How to make a script sleep for a random amount of seconds

If you want to insert a sleep in a script for a random number of seconds, you can do the following:

        NUMBER=$[ ( $RANDOM % 60 )  + 1 ]
        sleep $NUMBER

Replace 60 with the interval chosen and you will get a random sleep between 1 and 60 seconds.

This can be useful if you are trying to fetch data from a server who’s monitoring the number of connections you are opening and tends to blacklist you if you do too much.

How to crash a linux server

Easy!

You need to execute this as root.

First enable SysRq feature in the kernel
echo “1” > /proc/sys/kernel/sysrq

Then crash the kernel (makes a kernel dump)
echo c > /proc/sysrq-trigger

Reboot with no conditions (no disk unmount, just like pressing reset button)
echo b > /proc/sysrq-trigger

Shutdown all the processes gracefully except init
echo e > /proc/sysrq-trigger

Kill all the process brutally except init
echo i > /proc/sysrq-trigger

How to record almost like a pro

There is one very simple way to take your elearning module to the next level. Recording.

Recording almost like a pro means, several things:

– the right voice

– no noise

– the right pace

For the right pace, there is a lot to say but that is not the topic today. What I want is to give you a couple of tips you will find useful to create quality recording on the cheap.

– the right voice

Some people say I sound very well when I record myself. Truthfully I started to think so when people said it. I would have never started recording myself if nobody else would think my voice is good for recording.

I think most people can record themselve. I don’t think there is a bad voice and a good voice. It’s a matter of how you articulate, the noise, the technique. Not the texture of the voice. So if you sound like a screeching bird, keep faith, there is hope!

– no noise

That’s where there is usually room for improvment.

First, you really need a good microphone. I bought a Samson Meteor mic. It’s awesome. I just have one problem with it, the first time I showed it to my colleagues, they were wondering what I was doing with a dildo…

The sound of this mic is just fantastic and it costed me 100 euros.

http://www.samsontech.com/samson/products/microphones/usb-microphones/meteormic/

When you are recording yourself you may have to hit the keyboard, if you do a screencast, you may have to click, etc. These little noise can be captured by the mic and it may even be necessary to give a sense of reality to your performance, but it can also create loud banging noise every time you hit a key.

So here a little piece of advise. Find another table and put the mic there. Or find something like a laptop pouch, a backpack, whatever soft and big you may have and put the mic on it.

That’s my setup and it works. You can also put a pullover under, a coat or whatever you have close by.

Also make sure the CPU fan is not blowing directly towards the mic. That would mean more noise to get rid off in post production.

– Microphone orientation

One of the most annoying thing in amateur audio recording is Ps and Bs popping. Some people will sell you expensive screens to prevent them Some other people will teach how to make one yourself. But the true real way to get rid of them without investing anything is to setup your mic properly.

Just make it point upwards and don’t speak directly towards it. Direct your speech slightly  to the side of it. that way you will not create bursts of air

 

How to forward a lot of emails with Mutt

Today I had to forward 2200 emails from a mailbox to another address. I looked around a bit to find a way to automate this process but all I could find was how to forward new messages.

That’s easy, just put a .forward file in your home dir with the email where you want to forward and it works.

But to forward already received email, it’s a bit trickier.

I was already using Mutt and I know it is a very powerful tool so I looked a bit more into it.

In order to solve my problem I found the following:

You can Tag many messages with this command:

T.*

Then execute one command on all the message tagged with this:

;b

It will then ask you the email address where to bounce all this emails.

Fill it in and off you go. It took 3 minutes to send the 2200 mails. Cool 🙂

Then you can easily delete all these files with this:

;d