Beyond the Console: Tracing my Web Development Evolution
Overview
- My Journey
- Advice
- BUILD BUILD BUILD
- Stay Curious
- It’s okay to look things up
- It takes time
- Staying Organized (Notion)
- Setup a developer environment
- Current Tech Stack
- Conclusion
My Journey
Starting out as a web developer was a bit overwhelming. There were so many choices, and I often found myself unsure about which path to take. The fear of making the wrong decision and regretting it added to the confusion. Every technology seemed to have its own good and bad points, and listening to other developers talk about their experiences just made it all more hard to decide. Also, I had no clear idea of what I wanted to do with my Computer Science degree after college.
The uncertainty about the type of developer I wanted to become made the whole experience even more daunting . After about a year of trying to figure things out, I realized that there's no such thing as a choosing a bad path. I could form my own opinions by exploring different technologies and figuring out what I liked and didn't like. All I had to do was to “just do it”.
My overall goal is to help new developers who are getting into web development to learn more my experience because I feel that there are many new developers who experienced the same feelings and experience when starting out which I want to provide my experience and to hopeful help new developers show that they are not alone and to learn from my personal experiences and mistakes.
Advice
BUILD BUILD BUILD
The best advice for new developers is to start building. Theory and tutorials are good, but the real learning happens when you get your hands dirty. Don't worry about making things perfect; just learn from the process of creating.
Looking back, I wish I had listened to the advice of building a project sooner. I spent way too much time watching tutorials on YouTube, thinking I was learning something. But, in reality, I was just copying code without really understanding it. I wasn't confident because I kept questioning my decisions on where to start. I used to procrastinate a lot, just thinking about what would be the best decision. If I could go back, I'd tell myself to start building something, even if it's not perfect. We all start somewhere, and that's how we learn by just doing it.
One big thing I learned in trying to learn a new language or technology is to start with a simple project. Each language has its perks, but they can all pretty much do the same thing. When it comes to web development frameworks, I always start by trying to build a to-do list app. I know, it sounds basic and everyone has it on their resume, but it's great for learning the basic fundamentals of that language.
Taking that first step and trying to build something simple is the key. Once you get going, you can try building something a bit more complex. For me, I wanted to build something related to my hobby which was fitness. It was fun and worth it for me, and it made me a more confident developer. If you can, try building something that automates some part of your life. It could be a game-changer. I missed a few opportunities where I would be able to build something for someone because I kept thinking I wasn't ready. Looking back, I know I could have done it; I just needed to push myself.
Stay Curious
The tech world is always changing. Stay curious, explore new things, and keep learning. Curiosity is what keeps you growing in this field.
There are so many dev content creators on YouTube that have kept me up to date, inspired me to code, and just watch because I wanted to learn something knew. When they introduce or present talk the technology they made me ewant to code and try it out for myself. There are some technologies that can make things easier and later can be used in future projects of mine.
Even if I didn’t use it, for sure I learned something new and can go back to it and try it out again later. Just stay curious and you’ll learn so much by just listening and trying.
It’s okay to look things up
In the beginning, I’ve was always doubting myself as a developer because I would always have to look up the same exact things I’ve googled before. Till this day to be honest, I still look up the same things till this day like trying to center a div LOL.
I’ve come to accept that I will not know everything and you should too. Our brain has a limited amount of memory but being able to know how to navigate and search through documentation is actually an important skill that is not widely appreciated. It’s a very useful skill when trying to learn new things and just wanting to try things out. As long as you know how to search for the exact same solution, your solid. Depending on the person, some believe that you should learn from it and yes that’s true but over time you may forget somethings sometimes and you would need to search for it again.
It takes time
Throughout my journey in learning how to code, there was a point where I felt like I didn’t know why and what I was learning or what the point of it was. Over some time, the dots had started to connect and a realization hit that everything that I’ve learned has a purpose. It took me about my third year of college to final see the point of the fundamentals classes I took and the really hard impractical classes that I may never use as a developer.
In perspective, your brain is like a muscle where you would need to continuously train it to become stronger. Basically you will develop muscle memory over complex and abstract concepts where eventually you will realize that everything you’ve been learning was worth it because in some way it was making you stronger.
Them same experience hit me when trying to become a web developer too. It was basically starting from square one where what I was building and what I was trying to learn through tutorials didn’t seem to impact my understanding and learning at all. However, overtime once I started to identify a few patterns, there were certain dots that were connecting where I realized that each application is like a Lego piece where in the background it’s using the same fundamental steps to start but you can add more complex blocks to make your app their own and complete.
If you really enjoy web development or trying to become one, just keep going and never give up. I would take long breaks occasionally when building projects because sometimes it gets really overwhelming. But me continuously coming back and giving a try eventually paid off and made me more motivated to code.
Staying Organized (Notion)
Keep things organized. Tools like Notion can help you keep track of your projects, ideas, and resources. Being organized makes things easier and ensures you can find what you need when you need it.
I’ve used Notion as a second brain for me because I know that I cannot remember everything, but writing your notes and thoughts can make it a bit easier. The power of Notion for me is crazy because it’s free and you can write unlimited pages of notes.
Set Up a Developer Environment
Create a space for yourself where you can code efficiently. Learn about version control systems, code editors, and other tools. A well-organized environment makes the whole development process smoother.
Personally for me I really like using Linux. It forced me to learn more about the command line and it allowed me to understand my computer more. Through my journey with Linux, I went try hard mode and went for Arch Linux because I simply wanted to challenge myself and be able to make my developer experience look cool and efficient.
Find your perfect text-editor and how you navigate your code. I’ve used vim and Vs code as I’ve found ways to make my experience as a developer nice. Overall goal for myself as a developer is to be able to only use the keyboard. I feel like having to touch your mouse is kinda inefficient as you have to take your hand off the board. Try it yourself and push yourself. I feel like the long term practice will make the developer experience way better and fun. It motivated myself as a developer more because it made me actually feel like a developer. I’ve always wanted to be that really cool aesthetic developer who looks like they can type fast and look cool. I remember growing up that I thought developers where home body’s that were very anti social; however, my perspective changed where they can look really cool
Current Tech Stack
My current tech stack has been developed over the course of 2023 where I was exploring a lot and trying to see what would suit me as a indie developer. Currently I used Next. js app with Tailwind css and Shadcn/UI for the frontend. For the backend, I really like using Supabase instead of creating my own Express or Spring Boot server. This is my favorite stack because I’m able to get my ideas out there simply without too much hassle. Supabase saves a lot of time since it’s basically like a Firebase alternative without any vendor locking.
My stack before this was the T3 stack which I made a blog post about and it was actually started my journey in becoming a full stack developer. I would recommend it 100% as you’ll be able to learn so much about full stack development. For me, it allowed me to get a good understanding of both the front and backend which later on I really was curious on how to build the same thing but with different technologies. Through a lot of trial and error that’s how my current stack came to be but of-course later it may change again. Find what works for you and stick with it!
Conclusion
In a nutshell, becoming a web developer is about overcoming the initial confusion, taking that first step, and building practical skills. Embrace the imperfections, stay organized, set up a good development space, and stay curious. I hope my experiences help guide new developers on their journey. Remember, sometimes you just have to "just do it."