We all have our professions and expertises, and we rely on them every day to get things done.  Once in a while, you may encounter something out of the ordinary. About 3 months ago this was the case for me.

This is the idea of the outsider’s story. Independently working on projects that, “showed up on your path” are a little out of your comfort-zone and therefore hugely beneficial for technical and personal development. A hugely different category from what I usually blog about, but certainly very interesting, and I hope to write more posts in the same category in the near-future.

Anyway, hope you enjoy reading about the journey as much as I did experiencing it.

A little history

I was working on my own cryptocurrency when I saw IOTA on coinmarketcap, never heard of it before. I checked the whitepaper and I saw that they had what I tried to achieve (well, part of it, but I wanted too much for an experimental coin):
They put all users in the same roles.

This is the absolute 100% most important thing to me. Because different roles means different interests. Like with Bitcoin where miners are separated from the users. Miners have their needs, users have their needs. And they are not aligned, like it or not. I’m not going in deeply on this matter in this post.

In IOTA, making a transaction means validating 2 others. You as a user help the network without even knowing it. No separate agendas. No need to worry that a group of users will be upset, no high fees or slow transactions because the amount of transactions increases. It’s like 1 big crypto-communism.

That’s when I had to do something. I didn’t know what yet, but I had work on this. All my attention was suddenly directed towards IOTA. Now I only needed to put this energy to good use. I went in their Slack on #projects-channel and asked what needed to be done. A Tangle-explorer came up (the Tangle is IOTA’s equivalent of the blockchain in general)

So I build the most beautiful tangle explorer I had ever made. During that time, someone told me that they had a development fund for these kind of projects. But I didn’t want to get involved in that yet, in hindsight, not sure why, would’ve been great to have spent more time on it with some funding.

To the Flash-project

Then from one thing came another, I don’t quite remember what happened and how at this point, but within a week I was with David and Dominik (the IOTA founders) in a Skype channel, discussing some projects.

During that moment, there were 2 people from the IOTA team (whose names I won’t disclose) that asked me if I would want to work on IOTA full-time. My first response (as with similar offers) are always a no, since I work freelance only. More on this later.

Another week later, we came up with IOTA Flash as the next thing to work on, and I really liked the idea. For people who don’t know what IOTA Flash is, it’s a framework to directly exchange IOTA between 2 or more parties without the need for being online and without any fees.

Next day the IOTA-Flash channel was opened on Slack and I was dropped in the channel together with 8 other people. For the sake being polite, I’m not disclosing the names of the people in the team other than what was noted in the original Flash Channel Announcement. I was in the team with Lewis Freiberg, Paul Handy and Chris Dukakis.

We had a short meeting on how to get started. This was the first time having a conference call with the team. It was great. At this point I wasn’t sure what was to happen yet. I know that I was a bit too intrusive, I was thinking out loud how to tackle this problem. Guess that’s the enthusiasm again 🙂

I heard during the call that the Flash project had to be finished within 3 days. I already was sure that we wouldn’t make that deadline, at least I knew that I wouldn’t. Anyway, work hard & fast, the next day we started. Most of my time was spent with Lewis and Paul Handy. I worked most on the WebRTC part.

At the first day, things went fast. And I mean really fast. I loved the IOTA community (not just the team) for being direct and very productive in what they do. But being in the center of it was way different.

Let’s just say that what I did there was at the border of my experience. A border that is now bigger, thanks to the Flash-team. The things I learned there, from cryptography to using many different structures I have never used before, it was a 1 year computer-science course packed in 3 weeks. And it wasn’t just technology, being in such a different team as usual also serves as a great personal development opportunity.

I remember, that one point I was worried that the level of expertise might be too high for me. Everything that was being discussed I understood, but as soon as I did, the team seemed to have moved on. I quickly ignored that thought, knowing that if this was true, the team would have told me and I would have gone back to the tangle explorer.

Another important moment, was that there seemed to be some issues with the way the first Flash-channel was built. The signatures weren’t valid. Paul Handy called me and wanted to go over it. I told him: “But that’s Lewi’s part”. He said something like: “We don’t blame others here”. And I said: “It’s not to blame anyone, I’m pointing out that I don’t have the experience in all the crypto stuff” (the exact conversation might have been different).

And then he said the most beautiful thing that could’ve been said: “Well, Lewis isn’t here so now you do.”. That was really cool. It’s also a good sign to see how the IOTA Team operates. So we went over it and finally were able to fix it. The first valid Flash transaction was made.

Of course we didn’t reach the deadline (this wasn’t a surprise to me), so the project went on for a little longer. These weren’t my best moments during my time in the Flash-team. And there’s no shame in that. I had my opinions and I wasn’t afraid to tell them. Looking back, I forgot 1 very important thing I wish I kept in mind: I was dropped in an existing team. I’m used to managing and setting up teams myself, if not being in a brand-new one. If I didn’t forgot that I would’ve tried to adapt more. This is my only regret.

But now the project is done, and it’s free to use and test for everyone! There is a demo right here. The library and source code is here.

Aftermath

I’m very happy I took the opportunity to work on something I believe has a place in the future. During my time work on IOTA related projects, the only compensation I got were donations from the community (I had a donation feature on the tangle explorer).

I’ll never ask for more. This experience will stay with me. I’d like to thank IOTA for that again. In fact, the experience was actually so cool, that I made up my mind. I want to do more for IOTA, not less. I reached out to one of the people who asked if I would want to work for IOTA. Whatever happens, this was totally worth it.

If you are a developer, and you have the feeling that your work starts to get a bit repetitive, don’t be afraid to reach out to a developer of an (open source) project. A founder of a company. Even if it’s not in your field.
Ask them if there is stuff to be done, outside of the regular bug fixes or contributions you can make. I encourage you to do that. And when you do, be sure to post your version of the outsiders story!