DEV Community

Ahmad Tibibi
Ahmad Tibibi

Posted on

Welcome to my engineering blog!

Hello and welcome to my little corner of the web! I'm excited to share my journey as a beginner software engineer and the steps I've taken so far in learning to code. It’s been an exciting adventure filled with challenges, growth, and lots of learning, and I’m looking forward to what comes next!

My Journey Begins: Learning HTML, CSS, and JavaScript
Like many beginners, my journey into the world of programming started with the basics — HTML, CSS, and JavaScript. I had always been fascinated by technology and how websites and apps work, so it was a natural step for me to dive into web development.

HTML (HyperText Markup Language) was where I started. It’s the backbone of any website, providing the structure and content. At first, it felt like a simple language, but I quickly realized how much detail goes into creating a well-structured webpage. Learning HTML opened up a world of possibilities — I could now create simple webpages that displayed text, images, and links!

CSS (Cascading Style Sheets) came next. While HTML provides structure, CSS allows you to style and layout the page. Learning CSS was like learning how to make a plain canvas into something visually appealing. I spent hours experimenting with colors, fonts, grids, and flexbox layouts, trying to make my webpages look as polished as possible.

And then there was JavaScript — the programming language that brought my webpages to life. JavaScript was where I really began to understand what coding was all about. I learned to manipulate elements on the page, handle events, and make things interactive. The more I learned, the more I realized how powerful JavaScript was. It wasn’t just about making static webpages; with JavaScript, I could create dynamic, interactive experiences.

Stepping Up: JavaScript, TypeScript, and Node.js
After getting a solid foundation in the basics, I wanted to go deeper and expand my knowledge. This is when I discovered Node.js and TypeScript, two technologies that have been game-changers in my development journey.

Node.js is a runtime environment that allows you to run JavaScript on the server side. This was a huge revelation for me because it meant I could use JavaScript for both frontend and backend development. I started building simple APIs and even set up a few small server-side applications. It was thrilling to see how I could connect the dots between the frontend and backend, making dynamic websites come alive.

TypeScript, a superset of JavaScript, was the next step in my learning. TypeScript adds static types to JavaScript, which helps catch errors early and makes your code more maintainable. Although it was a bit of a learning curve at first, I quickly appreciated how TypeScript made my code safer and easier to work with, especially as my projects started to grow in complexity.

My Future Tech Stack: Next.js, TypeScript, Prisma, and MongoDB
As I continue to develop my skills, I’ve decided on a future tech stack that excites me and aligns with my goals. My dream is to build a business idea that I've been working on, and this stack will help me bring that vision to life.

Next.js – A powerful React framework for building fast, scalable web applications. Next.js handles both server-side rendering and static site generation, making it ideal for SEO and performance. It simplifies routing and API integration, which will be crucial for the kind of dynamic, user-centric website I want to create.

TypeScript – As I mentioned earlier, TypeScript is a great fit for large-scale applications. Its type system helps catch bugs early and improves code maintainability, which is key for long-term projects.

Prisma – A modern ORM (Object-Relational Mapping) tool that makes working with databases easier. Prisma provides a simple way to interact with databases like PostgreSQL, MySQL, and SQLite. I’m particularly excited about using it for database management in my business idea, as it simplifies queries and integrates seamlessly with TypeScript.

MongoDB – A NoSQL database that stores data in a flexible, JSON-like format. I’ve chosen MongoDB because of its scalability and ease of use for handling large amounts of unstructured or semi-structured data. It’s also a great fit for applications that require quick iterations and agile development.

The Future: Turning My Idea Into Reality
The ultimate goal of my learning is to bring a business idea to life. I have an idea that I’m passionate about and am eager to build a product around it. This stack will give me the tools I need to create a robust, user-friendly platform. Whether it’s a web app, a SaaS product, or something else entirely, I’m excited to keep learning and building.

While I’m still at the beginning of this journey, I’m motivated by the possibilities and the support of the developer community. I know there will be challenges ahead, but I’m excited to face them head-on and keep growing.

Thank you for reading my blog, and I hope you’ll follow along as I continue to learn and build! I’ll be sharing my experiences, tips, and resources as I progress. If you’re also on a similar journey, feel free to reach out — let’s learn and grow together!

Stay tuned for more updates, and feel free to share any thoughts or advice in the comments below!

Top comments (0)