Hi! I'm Sergiy, I write here about diverse topics. I do software development, currently working full-time for a company.
I started writing to clarify my thoughts and to create an additional space to ponder about various topics.
How I started programming
I became curious about Internet things in 2012. I was thinking about how those websites work and can I create a similar one for me. There was a popular website builder, I chose a template and had a full CMS to manage my first website. I then needed some customizations. Started learning HTML and CSS to edit the pages. It felt great. A few lines of markup and you see the results on a browser!
I created a few more websites using WordPress and other CMS. Got familiar with PHP and created a simple website from scratch. That one was for creating puzzles, they were categorized, users might create their posts.
Then I took a long pause distracted by studying at school and then university. I tried various kinds of service work while being at the uni. It was good to get familiar with different experiences. It assisted me in understanding what I don't want to do in life.
One day I thought why can't I continue doing what I was curious about and liked. So I started learning programming almost from scratch. I created a bunch of projects. Learning with books and Speed tabs were the biggest at the time of my learning journey.
After 3 months I got my first "job" experience as a trainee. There I wasn't doing anything interesting at all. Merely were going to work every day to rename icons. And after a week I found my first real programming job. I met smart people and was doing exciting tasks. I started as a backend developer(Node.JS). After a while, I was doing React, React Native, DevOps stuff. Many interesting things we were building.
While working full-time, I was interested in trying to build things. I created a Telegram bot to help students find a schedule for their lessons. It also was looking for any updates from the university's resources(website, YouTube, other communities) and sending them to students. There were a few other features. 1000+ students were using the bot.
First indie journey
In 2018 I created FableBee - a LinkedIn scheduler. There were a lot of such tools, I made an emphasis on simplicity. The tool was super simple. I made a few pricing plans, a landing page. I was reaching out to some people on LinkedIn who might be interested in the service. A few responded. I asked on Reddit.
The questions were something like "Would you use this service?". People told me they were excited to try. I launched. Made posts in communities with a link to the website.
I got several visitors on the first launch day, but no sign-ups. I continued to reach out to LinkedIn folks with messages "Would you try...? I created the tool".
After a few months of no interest, I closed the service. However, the experience gave me some thoughts to consider. Plus, I learned a lot while was creating the product. The main lesson is to not create something that nobody wants.
- Don't create something nobody wants.
- Don't think of ideas, but problems people have.
- Don't ask questions like "Would you use it?", "Would you pay for it?" to your potential audience. The words don't correlate with future actions.
- Don't waste a lot of time creating MVP.
- A better approach is to pre-sell a product before building it.
An attempt to build an audience in a domain I wasn't excited about
After a lot of related readings on the topic, I came up with an idea to create an audience first. Then, ask them what they want, simply put. And build that!
I chose to dive into the catering domain. I bought a domain, bootstrapped a website, a newsletter. Wrote one post. Reached out to catering professionals on LinkedIn to do a quick call with me to help the community of caterers and people who are interested in the domain. The website helped, they took me more seriously. I did several interviews, noted the insights. The difficult thing for me was writing every day to people proposing an interview. A very small percentage read the messages. A few responded. And a few percent of those few people agreed to the call.
I realized I don't want to continue spending time writing a hell of a lot of messages and getting one reply.
A lesson learned:
Don't spend time diving into a domain you're not interested. Anyway, you need to give up a few years to understand what's going on there and what problems worth solving. Even if I realize a problem to solve, I need a lot of time to adjust a solution to people's needs, to dive deeper into an industry I'm not excited about.
After reading books about AI, I was ignited with an idea to create an engaging experience like in movies...or, in games. I like to play simulation or strategic games. So I reasoned it would be enjoyable to create a game where you can play as AI that tries to understand its purpose and to escape from human control.
I pictured possible story plots. Started to implement in a tech I know - React Native. Though the storyline is short, I wanted to get any feedback from people. I released the game to open testing in April on Google Play.
This tool helps collect real people'/businesses' problems by fetching posts from Reddit and extracting only the relevant ones. I use a neural network to do the filtering because it's not enough to write
if - else for this purpose.
Why did I create it? I find it hard to search for problems worth solving manually. I decided to automate this kind of task.
What things interest me
I like the Rust programming language. The compiler is hugely helpful and the language itself is great. However, I don't have much experience in it. Created a few projects. For example, this one generates a CV from JSON.
I created a bot that assisted me in moderating my Telegram group. It checked spam(the algorithm is very explicit: it checks for spam words, recognizes some spam text patterns).
I love to read non-fiction literature. Especially the information that benefits me explicitly. E.g. how the X in this world works, why. I admire physics and how our Universe operates.
I enjoy enhancing my learning process and work with memory. For some time I practiced mnemonics. See my learning process in this article.