Learn Docker 🐳
Especially if you're a backend developer!
Before I learned Docker and used it for the first time, I had no idea what I was missing.
You might have built a web app, an API, or a service, and when you sent it to someone else, it didn’t work for them. Frustrating, right?
Docker solves this issue by containerizing your app into its own container (like a lightweight virtual machine). It includes all the dependencies needed inside the container, allowing your app to run seamlessly on any machine.
It solves the infamous problem of: “It works on my machine! 🤷♂️”
And it gets even better with Docker Compose! 🚀
With Docker Compose, you can manage multiple containers in one place, making it easy to run your app along with its dependencies—like your database, backend, and more—all in sync.
Start using Docker if you aren't already using it! 🛠️
Seriously! It will make your life easier
Especially if you're a backend developer!
Before I learned Docker and used it for the first time, I had no idea what I was missing.
You might have built a web app, an API, or a service, and when you sent it to someone else, it didn’t work for them. Frustrating, right?
Docker solves this issue by containerizing your app into its own container (like a lightweight virtual machine). It includes all the dependencies needed inside the container, allowing your app to run seamlessly on any machine.
It solves the infamous problem of: “It works on my machine! 🤷♂️”
And it gets even better with Docker Compose! 🚀
With Docker Compose, you can manage multiple containers in one place, making it easy to run your app along with its dependencies—like your database, backend, and more—all in sync.
Start using Docker if you aren't already using it! 🛠️
Seriously! It will make your life easier
👍1
My Method for Learning New Programming Languages/Frameworks When I Need Them
🌟 I highly encourage specializing in a single role in tech. However, there are times when we may need to learn new technologies for certain projects. Here's how I approach learning new things when I need them:
1️⃣ Start with Documentation
The first thing I do is go to the official documentation 📚 and follow the tutorial there. This helps me get a feel for the syntax changes compared to the technologies I already know.
2️⃣ Build a Simple Project
Next, I create a simple project 🛠️ using the new language/framework. This allows me to get hands-on practice and solidify what I've learned.
3️⃣ Apply it to the Use Case
Finally, I directly apply the new technology to the use case I had in mind ✅.
⚠️ This method is focused on achieving specific goals and solving immediate problems. It won’t make you an expert in the language/framework, but it will help you execute your project efficiently.
#ProgrammingTips #LearnToCode #CodingJourney #TechSkills #ProgrammingLanguages #Frameworks
🌟 I highly encourage specializing in a single role in tech. However, there are times when we may need to learn new technologies for certain projects. Here's how I approach learning new things when I need them:
1️⃣ Start with Documentation
The first thing I do is go to the official documentation 📚 and follow the tutorial there. This helps me get a feel for the syntax changes compared to the technologies I already know.
2️⃣ Build a Simple Project
Next, I create a simple project 🛠️ using the new language/framework. This allows me to get hands-on practice and solidify what I've learned.
3️⃣ Apply it to the Use Case
Finally, I directly apply the new technology to the use case I had in mind ✅.
⚠️ This method is focused on achieving specific goals and solving immediate problems. It won’t make you an expert in the language/framework, but it will help you execute your project efficiently.
#ProgrammingTips #LearnToCode #CodingJourney #TechSkills #ProgrammingLanguages #Frameworks
👍5
How I Watch YouTube Coding Tutorials 🎥💻
This post is focused on helping beginners by sharing my experience with YouTube coding tutorials. Back when I was starting out, I used to watch a lot of YouTube coding tutorials and code alongside them. I liked the feeling of completing a project even though I was just following a tutorial. However, I also spent my fair share of time in tutorial hell.
💡 Tutorial hell is when you watch coding tutorials, build projects along with the YouTuber, and feel like you've learned something, but in reality, you can't complete a new project by yourself.
Here are my tips on how to effectively watch YouTube coding tutorials:
1️⃣ Use tutorials to get a feel for a new language/framework/concept.
Code alongside the tutorial just to get a sense of what programming in that particular language or framework feels like.
2️⃣ Erase the tutorial code and rebuild it yourself.
Once you finish the tutorial, delete the project you coded along with. Try to recreate the end result on your own. Use official documentation, Stack Overflow, or Medium blogs for any difficulties you encounter instead of revisiting the tutorial. This way, you'll learn how a real programmer fixes their mistakes and comes up with practical solutions. When you're done, compare your code with the tutorial to spot differences and identify areas for improvement.
3️⃣ Build a new project based on what you’ve learned.
Even if it’s simple, creating another project will strengthen your foundation on the new topic you've just learned.
4️⃣ Focus on structured resources as you progress.
Over time, shift your attention to official documentation, blogs, and books as your main learning sources. These are usually more structured and provide a comprehensive understanding of the topic.
5️⃣ The ultimate way to learn is by building projects.
Apply what you’ve learned to solve problems you or people around you face. Real-world applications will solidify your skills.
I hope this was helpful! 😊 If any experienced developers are reading this, feel free to drop additional tips in the comments.
#ProgrammingTips #CodingJourney #LearnToCode #YouTubeTutorials #BeginnerCoders #TutorialHell #BuildProjects
This post is focused on helping beginners by sharing my experience with YouTube coding tutorials. Back when I was starting out, I used to watch a lot of YouTube coding tutorials and code alongside them. I liked the feeling of completing a project even though I was just following a tutorial. However, I also spent my fair share of time in tutorial hell.
💡 Tutorial hell is when you watch coding tutorials, build projects along with the YouTuber, and feel like you've learned something, but in reality, you can't complete a new project by yourself.
Here are my tips on how to effectively watch YouTube coding tutorials:
1️⃣ Use tutorials to get a feel for a new language/framework/concept.
Code alongside the tutorial just to get a sense of what programming in that particular language or framework feels like.
2️⃣ Erase the tutorial code and rebuild it yourself.
Once you finish the tutorial, delete the project you coded along with. Try to recreate the end result on your own. Use official documentation, Stack Overflow, or Medium blogs for any difficulties you encounter instead of revisiting the tutorial. This way, you'll learn how a real programmer fixes their mistakes and comes up with practical solutions. When you're done, compare your code with the tutorial to spot differences and identify areas for improvement.
3️⃣ Build a new project based on what you’ve learned.
Even if it’s simple, creating another project will strengthen your foundation on the new topic you've just learned.
4️⃣ Focus on structured resources as you progress.
Over time, shift your attention to official documentation, blogs, and books as your main learning sources. These are usually more structured and provide a comprehensive understanding of the topic.
5️⃣ The ultimate way to learn is by building projects.
Apply what you’ve learned to solve problems you or people around you face. Real-world applications will solidify your skills.
I hope this was helpful! 😊 If any experienced developers are reading this, feel free to drop additional tips in the comments.
#ProgrammingTips #CodingJourney #LearnToCode #YouTubeTutorials #BeginnerCoders #TutorialHell #BuildProjects
👍7
Forwarded from GDG Addis
Computer Vision & Graphics Research Initiative
Application Deadline: Sunday December 15, 2024
Workshop Duration: December 19, 2024 – January 7, 2025
Location: Abrehot Library, Addis Ababa, Ethiopia
Description:
Are you curious about research? Do you want to give it a try? If you aspire to pursue a career in research, whether as a research scientist, a professor, or someone pushing the boundaries of scientific knowledge, you have to start somewhere. Join us this winter for a 3-week research workshop designed to provide hands-on research experience and connect you with mentors from leading institutions.
Who are the Mentors?
You will have the opportunity to work with PhD students and researchers who have worked at prestigious institutions such as: University of Michigan, Cornell University, Ecole Polytechnique, Google, Meta, Adobe, University of Toronto, Microsoft
https://forms.gle/CuXS22UMnpYygnmH9
Application Deadline: Sunday December 15, 2024
Workshop Duration: December 19, 2024 – January 7, 2025
Location: Abrehot Library, Addis Ababa, Ethiopia
Description:
Are you curious about research? Do you want to give it a try? If you aspire to pursue a career in research, whether as a research scientist, a professor, or someone pushing the boundaries of scientific knowledge, you have to start somewhere. Join us this winter for a 3-week research workshop designed to provide hands-on research experience and connect you with mentors from leading institutions.
Who are the Mentors?
You will have the opportunity to work with PhD students and researchers who have worked at prestigious institutions such as: University of Michigan, Cornell University, Ecole Polytechnique, Google, Meta, Adobe, University of Toronto, Microsoft
https://forms.gle/CuXS22UMnpYygnmH9
Sometimes people die because of bad code. But there is no way to write perfect code 100% of the time
I checked my git stats for this year using https://git-wrapped.com
I think it was a descent year for me. Leave your stats in the comments if you want
I think it was a descent year for me. Leave your stats in the comments if you want
Git-Wrapped
GitHub Wrapped 2025 - Your Coding Year in Review
Like Spotify Wrapped, but for your GitHub activity! Discover your coding journey in 2024 with beautiful visualizations. See your top languages, commit streaks, and more in an engaging story format.
Things You Need to Know as a Backend Software Engineer 🚀💻
In your software engineering journey, you need specialization in a single field, although knowing the fundamentals of other fields could also benefit you. If you choose to specialize in backend engineering, here are things you must learn:
1. Learn a Programming Language 🖥️
When I say learn a programming language, I mean strive to be an expert in that language. You must understand the fundamentals (conditionals, loops, variables, functions). You also need to dive deep into OOP, learn multithreading and concurrency, and master data structures and algorithms to sharpen your problem-solving skills. 💡
2. Master Your Chosen Framework 🔧
Understand the ins and outs of the framework you choose to specialize in. Familiarize yourself with its documentation and stay up to date with any changes introduced. If you learn one programming language and framework really well, you can adapt to new languages and frameworks more easily. 🌟
3. Understand Databases 🗄️
Learn at least one relational database and one non-relational database. Familiarize yourself with SQL syntax, understand query optimization, database schema design, and explore advanced concepts. 📊
4. Know APIs, Authentication, and Authorization 🌐
Gain a strong understanding of how APIs work, how to implement authentication and authorization, and how to write clear and comprehensive API documentation. ✅
5. Learn DevOps Essentials ⚙️
Master containerization (e.g., Docker), CI/CD pipelines, load balancing, monitoring, cloud services, and deployment best practices. These skills are crucial for efficient backend development. ☁️
Don't be afraid to dive into advanced topics. That’s the only way you can truly stand out. 🌟 Feel free to drop any concepts I missed in the comments! 💬
In your software engineering journey, you need specialization in a single field, although knowing the fundamentals of other fields could also benefit you. If you choose to specialize in backend engineering, here are things you must learn:
1. Learn a Programming Language 🖥️
When I say learn a programming language, I mean strive to be an expert in that language. You must understand the fundamentals (conditionals, loops, variables, functions). You also need to dive deep into OOP, learn multithreading and concurrency, and master data structures and algorithms to sharpen your problem-solving skills. 💡
2. Master Your Chosen Framework 🔧
Understand the ins and outs of the framework you choose to specialize in. Familiarize yourself with its documentation and stay up to date with any changes introduced. If you learn one programming language and framework really well, you can adapt to new languages and frameworks more easily. 🌟
3. Understand Databases 🗄️
Learn at least one relational database and one non-relational database. Familiarize yourself with SQL syntax, understand query optimization, database schema design, and explore advanced concepts. 📊
4. Know APIs, Authentication, and Authorization 🌐
Gain a strong understanding of how APIs work, how to implement authentication and authorization, and how to write clear and comprehensive API documentation. ✅
5. Learn DevOps Essentials ⚙️
Master containerization (e.g., Docker), CI/CD pipelines, load balancing, monitoring, cloud services, and deployment best practices. These skills are crucial for efficient backend development. ☁️
Don't be afraid to dive into advanced topics. That’s the only way you can truly stand out. 🌟 Feel free to drop any concepts I missed in the comments! 💬
What do you guys specialize in?
Anonymous Poll
36%
Front-end
30%
Back-end
27%
Nah I'm Full-stack
7%
Mobile
9%
DS & ML
2%
Other (comment)
You might start your coding journey for different reasons, such as curiosity, passion, money, or anything else. However, patience is what keeps you going. You might encounter times when you feel overwhelmed by the complexity of a concept and are unsure where to start learning it. You might face a bug that takes an entire day just to figure out why it happened, or you might compare yourself to others ahead of you in their journey and feel like you'll never reach their level of expertise. If you are not patient, cannot persevere with grit, or fail to train your mind to seek solutions instead of making excuses, it will be very difficult to succeed as a developer. Be patient and train your mind to love the struggle. You'll get there slowly but surely.
🔥9
Juggling multiple projects at the same time be like
Source: https://discord.com/channels/1148581179084243054/1152353769145778216/1331371867982004376
Source: https://discord.com/channels/1148581179084243054/1152353769145778216/1331371867982004376
