The beginning
It all starts in august 2023. I wanted to build a project to add to my portfolio. The idea was to create an app where you can upload your CSV files and the data are displayed nicely in a table. I wanted a full stack project to showcase my skills. The stack was to use Python (FastApi) as the backend and React as the frontend. I didn't know yet what to use as the database at the moment, but I wasn't worried, I would start with dummy data.
Project's start
Everything was going well, the UI was taking the wanted shape, and my backend endpoints were ready. I was able to upload the files and displayed them in a table. I was happy and motivated.
Problems arrived
In order to simulate the database, I decided to use local storage, in order for me to check the behaviors of the app. This is when the things started to get bad for me. The imposter syndrom started invading me. I was trying to use custom hooks to showcase my React skills. It was a mess, wasn't able to render anything, starting getting lost in my code, and doubting a lot about my real capacities. I was conviced that the only problem was "skill issues". I decided to stop here and "re-learn" how React and Python work. From there I took a 100 days of code course in Python to regain confidence, and the things were going well.
Unexpected events
A that time I had built a great Python project called "Community Blog" where after signing up you can create your blog articles, edit them, see other's articles, comment them... This project gave me a lot of confidence. At this time James Q Quick released his Astro course, and I knew I was not able to afford it. One day, on Twitter I see James posting that he had some 100% discount for his course, for the firsts to answer the tweet. I took my chance. What I realized after, was that the post was from 3 days earlier. I was thinking "ok, I've missed my chance, no worries". Few moments later I received a message from James saying that he still has some discounts available and if I was still interested. I of course said yes, which gave me access to his entire course for free. It was an amazing gift and the minimum that I could do was to dedicate a 100% to the course. I worked on it very seriously and learnt some much things, and espacially the Xata database, which James was talking a lot in his videos. From there I decided to upgrade my existing Astro blog to the new version and to re-build my website with Astro (previously Nextjs). And the results were very satisfying.
Then the objective was to practice my knowledge building a project with Astro and Xata. So I decided to give a second chance to the CSV project. Starting over, I see on Twitter that Xata is doing a hackathon. It was the perfect timing, I have the project, and my knowledge from the course was still fresh in my head.
The hard work
I was scared for different reasons:
- It was my first ever hackathon
- It was from mid-december to mid-january, which means for me that my 3 kids are gonna be at home during Christmas holidays, for almost 3 weeks, with my wife working.
- My family was also coming for a week during those holidays.
On the other hand, It was an amazing opportunity to build a full stack project, with limited time, and reviewed by amazing people. I had no other choice to wake up early (around 4am) in order to have few focused hours without any distractions. It has been very tough and I knew it's gonna be almost impossible to have the project as I wanted. I was just short on time I can dedicate to it. But the purpose was to submit a finished project that works properly, even if I wasn't able to add all the desired features. It was also important to do it without unecessary pressure or stress. Finally I was able to submit the project and was waiting for the results.
The results
Waiting for the results, James invited me to collaborate for his Learn Build Teach website. Chatting with him on monday February 5th, I received an email from Alex Francoeur from Xata saying "Congratulations for winning the Xata hackathon". I realized at that moment that I had never felt such satisfaction in my whole life. Not in the way of the happiest day of my life, but the feeling of being so proud of myself. I was able to be a programmer, with my very first line of code at 37 years old. After 2 very difficult years, my hard work has payed off. I've cried of happiness, moments like this are very satisfying and gives you so much confidence, that when you deal with imposter syndrom, are very appreciated.
Conclusion
What I've learnt from this experience? First of all I've learnt a lot about myself, what I'm capable of and how to succeed no matter the time it will take me. Even with kids and few free hours during the day, it's possible to succeed. I don't have to rush, people manage to have a job quicker than me, that's totally find, I need more time, that's totally find too, my actual life is not very compatible with what I want to achieve, that's ok. I think patience and hard dedicated work, will guide you to success. Everyday in programming is a win. It's a place full of opportunities to showcase and learn something. The satisfaction it brings me is priceless, and I have to continue in that direction.
Special thanks to James Q Quick, all the members of the Learn Build Teach community, Alex Francoeur and Tudor Gobulenco from Xata and all the Xata community, and everybody supporting me and inspiring me from the beginning.
As I like to say, "Always code with love and passion"
You can find the app here
And the repo here