This fictional story begins more than 10 years ago. I was a student at technical university and was confused by how outdated some of the programming-related courses are. I was checking out a few first lections and usually skipping the rest of them (except a couple courses that were fun and uptodate). In my spare time I was tinkering on gentoo linux, cybersecurity and competitive programming (codeforces, ACM ICPC, etc). I wanted to start working ASAP, so that I could finally get to the most interesting part, but man, how wrong I was...
This write up is inspired by my university friend, who made a film about my time living in a tent in a turkish forest and working on my FOSS projects.
The Corporate Work
To impress one girl, in third year of University, I passed an interview and got a job offer in the hugest internet corporation in the country. I did a bit of Python/webdev and in a few months and a couple of internal interviews I switched to SRE role for search engine and services around. This was my first disenchantment in technologies and processes around. Everything was a mess and barely maintainable. Three implementations of string type with different memory allocation approaches, monorepo of hundred gigabytes, tons of services glued together and only the god knows how they keep working.
But the worst part is not a mess or lack of well-defined processes, the worst part is a feeling of helplessnes, a feeling that your have a 0 impact, you just spend months of your life to keep this stuff floating. 1 year into corporate work and I have a clear understanding that health insurance, extremely comfy office with massage, yoga, language clubs, cookies or watever you can imagine, a salary times higher than the average in your country doesn't matter if you feel miserable. Moreover, I was afraid to get into the trap of comfort and to start stagnating together with the corporation and its messy codebase :) P.S. The girl wasn't particularly impressed by those achievements as well.
New University and Startups
Luckily, around this time I got a chance to switch the university. This time it was fun. It was a completely new city built for this particular Uni, professors were from all over the world, program was made in collaboration with CMU, almost all communication was in English. It was tons of fun. I had a good background and amount of hard skills to keep up with studies relatively easy and I took the opportunity to acquire soft skills and business skills as much as I could.
In addition to techncical communication, enterpreneurship and other courses, we were building students community and organizations, creating sport clubs, changing the university itstelf, participating in hackathons, and spinning up startups. The amount of energy and effort was impressive. We've built a streaming app, before periscope became a thing, created a delivery service for our city before taxi apps appeared. And this is only a couple of projects I personally was in a charge of. A lot more things were happening around. It was exciting time.
I didn't forget about Computer Science and cool technologies and was learning Lisp, FP and Clojure in parallel. So mindblowing, so interesting. I desired to apply it in a real world. Maybe rewrite the delivery platform? A few days after the meeting, where we discussed a potential refactoring, my uni friend came to me and asked: Would you like to help my two friends from UK and France to build a platform for managing commercial buildings? We can use watever tech stack you want.
Despite being a cool experience, the delivery wasn't a profitable project, it was more like a fun pet project made by students for city citizens. It was already at the end of its lifecycle, so getting into a more scalable international adventure was tempting. We had a calls with the guys and started to build the platform from scratch in a completely new and unusual tech stack.
The Dark Times
Everything started bright and fun, we were building and delivering relatively fast, techonologies were awesome and all that, but there were a few catches. 1. I wasn't a founder of the project and didn't have a enough "business vote power". 2. My soft and leading skills were much better than a few years ago, but still very suboptimal. 3. I already had enough fun with business parts in delivery project and was focused almost solely on technologies and software development in this one.
I was designing architecture, CI pipelines, containirized infrastructure (before kubernetes was a thing), workflows, I was doing docs, refactorings, scrums-agiles, onboardings, task tracker configurations, etc. It was a lot of new and important experience, but at the same time it was a lot of load. Of course, I couldn't do everything well. There are a few conflicts and tension points appeared in the team and I didn't resolve them properly and completely. Moreover, I didn't have enough energy to do so. I was tired. I was exhausted.
I cared too much about tech and processes, but let the other aspects of the project slip, including communication, top-level decision making power and meaningfulness. At the point, where I overworked, stressed and lacking power and leverage, it was extremely hard to change anything. I couldn't just keep working, because I was almost physically vomiting when open the project in the text editor. I decided to leave.
Cause of my random contribution to some open source Clojure project, just a couple weeks after I left the project, I got an invite for an interview. Did I mention that for my whole life I had a desire to make a free and open source software? It looked right to me, it felt important and impactful. Some of it were inspired by hacker culture of 2000s and my youth idealism, but some of it became a part of me and became a kind of an internal belief.
However, it was never enough time for it. Everyone around were telling you can do it next sprint/month/whatever, let's finish this feature first, or we can't do so, otherwise our competitors would be able to steal our tech, so I was only casually contributing to FOSS, when I could, but it was usually minor. Even with those minors contributions, somehow I got this invite.
The Alps
The interview was by the one of the best Clojure teams in my country and I passed it relatively easy and also got x5 salary without any negotiation. Yes, I cared only about technologies on my previous project and it wasn't too hard to make an x5, but it was still quite high salary for the market at the moment. This time I didn't have any expectations. I just wanted to save money and buy a free time to recover from my previous overworking experience.
Plan was simple: Work for a year, save some money, get at least a couple years to travel, work with psychologist, play the games, ride the bicycle and feel happy.
I moved to the cultural capital (most beatiful and historically rich cities), spend a few cool, fulfiling and interesting days at my ex-coworker's place (fellow hacker and researcher, one of the important figures in tor project), while looking for an appartement for rent. When I found the apparts near the office I moved in and started my new job.
The work was relatively boring, I myself was tired, but I was following the plan: I was saving around 90% of the salary and did my dids and duties. I also had some activities outside of the work: riding the snowboard, learning acrobatics, visiting mountains from Siberia to Alps, hanging out with friends, visiting some iconic historical places, traveling for hackathons and conferences around the Europe.
Despite the fun I got from sports and social life, I still felt exhausted, I didn't want to wake up, it was hard to get up from the bed, it was not much reason to do so, it was a deep apathy. Luckily, around this time I got allocated to lead a new project, a EMR for hospices in US. This turned out to be an incredible experience.
It started, when we with my friend were hanging out in Austria, in cozy chalet on the side of the mountain. We got tickets for airplane for 80$ (the price for both ways, we got it half a year in advance on a random sale), and rented a room for 10EUR/night(?) We had to share the bed and we were cooking ourselves to keep expenses low, but it was incredibly amazing place. Not usual "amazing", but really-really amazing. The weather, the snow, the views. We were snowboarding the powder, glashiers and forests. We were comming back home in the evening and eating meals we made near a crackling fireplace.
In one of such beautiful evenings of my vacations I got a work call, the call about this potential new project for hospices. I met two stackeholders and we get to know each other a bit. It was pleasant, they were nice and seemed smart, their expectations were unrealistic, but they were very cooperative and understanding, so I got a feeling that it can be a fun project.
Grown-Up Start-Up
After I came back from vacations I started to work with those two guys from US and building a PoC of the system. We were discussing requirements, did remote user testings and assesments. I onboarded a couple more devs in the team and we started to build stuff even faster. It was very pleasant to work with those men, I was genuinely happy to interact with them, but I wasn't too much excited about the project, I wasn't too much excited about life in general at the moment. It was just another commercial EMR. I didn't feel any meaning in it, I only felt that I'm underemployed, I make some CRUDs and web pages, when I spent years learning quite involved Computer Science and Math.
It was already almost a half a year into the project, but we still didn't have any real users. Moreover, I was afraid that the system we've built was based on our discussion and extrapolations mostly, rather than on real use-cases. I suggested that I come to US, go around the hospice and we interview doctors and nurses, visit their planning meeting and all that things.
It turned out to be a great experience, together with my lovely stackholders we collected a lot of data and insights and adjusted the current implementation quite radically to fit the real needs. Besides the work I had a lot of new experiences (video log 1, vlog 2): visiting a lot of places, shooting guns, dating a wonderful girl, spending a time on the farm, going to hot springs, learning Spanish from Mexican workers, watching american football games IRL, doing beautiful hikes.
What is more important I've built a long-term friendship with Troy and Robb. After I spent time in hospice, the project became more meaningful, I started to feel the real need for it, I also had a lot of impact on the project. It didn't feel completely right because of proprietary nature, but other than that I was very happy about it. The humans involved in it were top-notch, interactions with them were a pure pleasure.
Burning and Saving
We were getting closer to one year point mark, still not yet deployed on our first hospice (owned by one of the four stackeholders). I work as hard as possible and we get all base functionality ready, but it has the price: I got even more exhausted. Guys are very happy with what we achieved and asking me if I want to become a stackeholder. Rationally speaking, it's a great opportunity: wonderful humans, very reliable and scalable business, fancy tech stack, but personally I don't feel like it's the right way.
It's a proprietary software and it bothers me. It's a CRUD web app and feels much less than I'm capable of. And last, but not least, I still exhausted, maybe even a bit more in the last a few months, so I'm afraid that I would unintentionally start sabotaging the work we do if I keep working on the project.
At this point, I had enough money for 10 years of a quite minimalistic life. I have an apartment at home town, my expenses are low, I spend around 100$ for food and 100$ for sports a month and do occasional budget-friendly trips around the world. We made the first production release, onboarded a few people (nurses and doctors) and got our first billing done IIRC. And... I deciding to leave the project, follow my original plan and finally get some rest.
Vacations and the Start of Open Source Journey
I allocated to month to do nothing. I spent a couple of weeks laying on the bed and walking around. After that I started to play some video games, wandering around the town and going for casual street workouts with my friend. It was intentional, I was learning how not to blame myself for not being productive, I was learning how to care of myself, my physical and emotional health. I started to feel, I stopped to hurry. After those two month I built a bit of useful boredom, which made me continue to tinker on Nix, reproducible dev environments and all those things.
I couldn't work much at the beginning. Maybe 15 or 30 minutes a day before I got exhausted again, some days I couldn't work at all, sometimes I couldn't even speak. Slowly but steadily, I got my curiousity and courage back. I started to make videos and streams on the topics I learn and explore, I started to build my small FOSS pet projects. Not immediately, bu I got back some of my ability to work and to live. I found power to get a few sessions with psychologist and it also helped to feel better or at least something (:
In half a year I got to the level, where I could work a few hours straight (not every day, but quite often). I already had a few minor FOSS projects and I switched from Nix to Guix (because I wanted a general purpose language instead of DSL and liked lisps ATM). It turned out that there is no Home Manager for Guix, however, it wasn't a big deal, I had a confidence that I can make it myself and I did it. I built it in a few months and later upsteamed it to Guix as a Guix Home subsystem.
This was a year into my Open Source journey, but I already gained a lot of my productivity, curiosity and fullfilment back. I made a few FOSS project like RDE, Guix Home. I got a lot of positive emails and feedback. I became much more lively and happy. I wouldn't say I was completely happy at this moment, but I was a half a way into it.
The War
I definitely was on a right track and everything were getting together and I was getting better with every day. I was tinkering, having fun, getting the meaning, happinnes and liveness. I felt like taking a few years off and working full time on Open Source was a great decision. The year went quickly, I did a lot of contributions to mine and others FOSS projects, I broke my leg on a wakeboard, got into climbing and kayking and planned two trips for the winter.
I've spent New Year week in Turkey in the mountains climbing with folks I met a couple of months before in a climbing gym. Two months later I had a snowboarding trip with my university friends in Siberia. One morning I woke up 5 am and saw my half-sleeping friend watching some crappy message by president on TV in the other room. I was like: what the heck are you doing, bro? He replied: it seems like the we (goverment of our country) started a war. I was: No way, you are messing with me.
We couldn't accept this fact for a few days, we couldn't belive that it can happen in the 21th century, but it actually happened. We continued to ride the powder and tried to enjoy our time, but were constantly scrolling the news in disbelief.
A few month forward, I got a new pasport for travels instead of expiring one, got some other documents ready, packed a backpack, took my mom's car and went to the Georgia for unknown amount of time. I had only a couple thousands of dollars in cash and a couple more I transfered to my friend three months before. My savings on the bank and investment accounts were frozen, so instead of peacful 10 years of minimalistic life I just got into unknowns without a job, a home and running out of budget quickly.
The awfulness of war, opressive regimes and all that are important topics, but we won't talk about them today, let's focus on how I ended up in the forest writing an open source software.
Running Out of Money
I've been to Georgia (Sakartvelo) in 2019 and was a bit familiar with this beatiful hospitable country. This time it was even more enjoyable experience. So much new and interesting things, a lot of infrastructure improvements since the last time. The weather is so wondeful, that it was hard to be stereotypically grumpy as I was the whole life. Almost every day is sunny and nice. I was enjoying every moment here.
The bureauchracy is very manageable, I got a sim card, bank account and legal entity in a couple of weeks. After the most of the paperwork was settled, I came back to my FOSS projects, spending tons of time with them. The only issue at the moment was money, they were evaporating fast. With two my good friends we were renting a room at guesthouse. It costed around 200$/month/person, but it was too tight for 3 people. A little bit later we found an apartment with 3 bedrooms and it became 500$/month/person (yeah, this is quite expensive for Georgia, but a lot of people came here cause of the war and the demand was too high at the moment). It was sparse and comfy, I finally could function properly and work efficiently.
A half of the time I was coding, half of the time I was researching and trying to build a sustainable financial model for the projects and a half of the time doing side projects to replenish the treasury. It turned out to be quite a hard task to raise funding for FOSS work, without getting into VC money. And VC money will likely screw up your project. At least from what I see from other open source projects nearby.
Donations and Trip to Turkey
Other option was donations, I made an opencollective page and it is quite successful for the size of the project, we get around 2-3k EUR/year. However, it's not enough to pay the bills (at least at the moment) even for one person, not talking about other contributors. So, I decided not to rely on them and keep it as a backup for the harsh time or some project-related activities (later we organaized an internship for RDE from this funds).
I started to look for consulting contracts, so I can apply the stuff I develop to real world projects and also get paid for it. I knew from the beginning that at some point of time I'll need to get money for my work somehow. That's why when I started my Open Source Journey a couple years ago I also started to make videos and streams.
Thanks to those videos I landed my first guix-related contract. I went to the Turkey for one month, built a custom Guix-based operating system for PinePhone, teached a small dev team about Guix and Emacs and had a very pleasant time with very hospitable guys. It also gave me enough money to cover the next few months of my life.
By the end of the spring our rent finished and we with my friends moved apart. I found a room in a coliving for 300$/month and was keep looking on how to stay afloat.
UAE to Save Money
I was invited to teach a lisp course in Lalambda 2023, a summer school on advanced programming and contemporary art. It's a not for profit activity, but I like teaching, so I committed to it and spent a few weeks preparing materials and exercises for students. At the same time we were chatting with my mid-school-times friend and he invited me to stay at his place in Emirates and to hang out. It was a nice opportunity to spend time with my friend and also save some money. I took tickets to Abu-Dhabi for the next day after summer school finishes.
Lalambda was a fantastic experience, the classes went great, I got a lot of positive feedback, I met many cool people and a very nice girl with PhD. And on this positive note I left Georgia.
Next three month I spent in UAE. It was hot, 46-48 degrees celsius outside, so most of the time I spent either at home working or at climbing gym training, and of course sometimes hanging out with my school friend and his friends.
Very cool and productive times, I implemented a lot of features in my current projects, made a few releases, started a new FOSS project (an IDE for Guile Scheme) and started preparation for upcoming conferences.
However, my UAE visa was expiring and I had to find another country to stay. Finances didn't get better, so it had to be very inexpensive country. I decided to go head first into the Turkey as most cost efficient and familiar option I knew at the moment. I've been here a couple of times already: wakeboarding in 2020, rockclimbing in winter 2021-2022 and consulting in 2023. But this time was different, I had a backpack, 900$ and 200EUR in cash and no foreseable source of funding.
Hiding in the Forest
Fast forward a few intermediate stops, I landed in Antalya and was looking for the bus to Geyikbairi (a pine forest valley surrounded by mountains, a disneyland for rock climbers). I've been here in 2021, but last time my friend picked up me from airport and delivered straight to the bungalow, this time I was on my own. I missed the bus, but somehow managed to get to the valley. I had a tent booked in one of the campings for 8EUR/night, it included access to shower, kitchen and common indoor space.
There was a cat (a few of them) in the kitchen and common space, causing a severe allergy. So I was walking around the valley and looking for another place to stay for a few days and found another camping, namely camp Geyik. In the meantime I recorded my talk about Scheme IDE for EmacsConf 2023, so people can see what cool stuff I'm working on.
After I finished with conference talk, I went by bus to the city and found a two person (actually 1.5 person) poked and fixed tent in Decathlon for ~100EUR and a blanket for 5 EUR. Came back and negotiated a price (around 800EUR for 4 month) for access to common area, kitchen and shower. Found a cozy spot in the woods, pitched a tent and started to work even harder on my FOSS projects.
Surviving
I had around 100$ left, the visa allowed to stay for 3 month in a half a year (with mandatory visa run after first 2 months), the winter was comming, the rains and the winds were getting stronger. That was only the beginning.