{"@attributes":{"version":"2.0"},"channel":{"title":"Mohamed Yamani | Software Engineer","description":"Hello there! I am Mohamed Yamani, I also go by yamanidev online. I am a software engineer documenting my journey by occasionally posting articles of my experiences, tips and thoughts to my blog. This is my personal space online.","link":"https:\/\/mohamedyamani.com\/","item":[{"title":"How to Use Multiple Claude Code Accounts (Work & Personal)","link":"https:\/\/mohamedyamani.com\/blog\/multiple-claude-code-accounts-work-personal\/","guid":"https:\/\/mohamedyamani.com\/blog\/multiple-claude-code-accounts-work-personal\/","description":"How to use multiple Anthropic accounts with Claude Code with separate config directories. Keep work and personal sessions isolated and persistent.","pubDate":"Fri, 27 Mar 2026 00:00:00 GMT","category":["llms","ai","setup"]},{"title":"Finding a Way to Keep Up with My Ever-Growing Newsletter Inbox","link":"https:\/\/mohamedyamani.com\/blog\/finding-a-way-to-keep-up-with-my-ever-growing-newsletter-inbox\/","guid":"https:\/\/mohamedyamani.com\/blog\/finding-a-way-to-keep-up-with-my-ever-growing-newsletter-inbox\/","description":"One Friday morning, I decided to put an end to the chaos of my growing newsletter inbox with thousands of unread emails. Here's how I planned to tackle the overwhelm and set realistic reading goals.","pubDate":"Sat, 08 Mar 2025 00:00:00 GMT","category":["personal","learning"]},{"title":"I Finally Graduated: Reflections on the Journey","link":"https:\/\/mohamedyamani.com\/blog\/i-finally-graduated-reflections-on-the-journey\/","guid":"https:\/\/mohamedyamani.com\/blog\/i-finally-graduated-reflections-on-the-journey\/","description":"In this reflective piece, I share my 5-year long journey of going through a computer science school and the lessons I learned along the way.","pubDate":"Tue, 12 Nov 2024 00:00:00 GMT","category":"personal"},{"title":"How to Deploy a Next.js Application to a VPS Using NGINX and PM2","link":"https:\/\/mohamedyamani.com\/blog\/how-to-deploy-nextjs-application-to-vps-using-nginx-and-pm2\/","guid":"https:\/\/mohamedyamani.com\/blog\/how-to-deploy-nextjs-application-to-vps-using-nginx-and-pm2\/","description":"In this guide we'll go through deploying and self-hosting a Next.js application using Pages Router to a VPS with NGINX and PM2.","pubDate":"Mon, 26 Feb 2024 00:00:00 GMT","category":["nextjs","devops","web-development"]},{"title":"My First Experience Giving a Talk @Devfest El Bayadh 2023","link":"https:\/\/mohamedyamani.com\/blog\/my-first-experience-giving-a-talk-at-devfest-el-bayadh-2023\/","guid":"https:\/\/mohamedyamani.com\/blog\/my-first-experience-giving-a-talk-at-devfest-el-bayadh-2023\/","description":"I take you through my thought process preparing for my first talk at DevFest El Bayadh 2023, the topic struggle, the nerves, and what happened on the day.","pubDate":"Fri, 19 Jan 2024 00:00:00 GMT","category":"personal"},{"title":"Let's Understand CSS: Inheritance","link":"https:\/\/mohamedyamani.com\/blog\/lets-understand-css-inheritance\/","guid":"https:\/\/mohamedyamani.com\/blog\/lets-understand-css-inheritance\/","description":"Most CSS bugs come from conflicting styles. Understanding how CSS deals with them can help you avoid them. In this article, I explain one of the fundamental concepts for resolving them: inheritance.","pubDate":"Mon, 16 Oct 2023 00:00:00 GMT","category":["css","web-development","basics"]},{"title":"Linux Fundamentals: File Permissions and Ownership","link":"https:\/\/mohamedyamani.com\/blog\/linux-fundamentals-file-permissions-and-ownership\/","guid":"https:\/\/mohamedyamani.com\/blog\/linux-fundamentals-file-permissions-and-ownership\/","description":"Explaining Linux fundamental concepts: file permissions, ownership and the chmod command to change the permissions of a file in the two different syntaxes, octal and symbolic.","pubDate":"Tue, 19 Sep 2023 00:00:00 GMT","category":["linux","basics"]},{"title":"Linux Fundamentals: Explaining the ls command and beyond","link":"https:\/\/mohamedyamani.com\/blog\/linux-fundamentals-explaining-the-ls-command-and-beyond\/","guid":"https:\/\/mohamedyamani.com\/blog\/linux-fundamentals-explaining-the-ls-command-and-beyond\/","description":"Explaining the different outputs of the ls commands, how to use them to understand concepts like file permissions, as well as how to use the built in terminal manual.","pubDate":"Sun, 10 Sep 2023 00:00:00 GMT","category":["linux","basics"]},{"title":"How ChatGPT Can Hurt Your Problem Solving Skills: An Anecdote","link":"https:\/\/mohamedyamani.com\/blog\/how-chatgpt-can-hurt-your-problem-solving-skills-anecdote\/","guid":"https:\/\/mohamedyamani.com\/blog\/how-chatgpt-can-hurt-your-problem-solving-skills-anecdote\/","description":"An anecdote on how my reliance on ChatGPT has lead my problem solving skills to get worse, and how I am getting over it by changing the way I use the tool.","pubDate":"Sun, 03 Sep 2023 00:00:00 GMT","category":["llms","ai"]},{"title":"The Migration Adventure: CRA to Vite and npm to pnpm","link":"https:\/\/mohamedyamani.com\/blog\/the-migration-adventure-cra-to-vite-and-npm-to-pnpm\/","guid":"https:\/\/mohamedyamani.com\/blog\/the-migration-adventure-cra-to-vite-and-npm-to-pnpm\/","description":"A little snippet about my journey of migrating a project from create-react-app to Vite and from npm to pnpm and the challenges of making these changes at once.","pubDate":"Wed, 05 Jul 2023 00:00:00 GMT","category":"miscellaneous"},{"title":"Understanding the Box Model in CSS","link":"https:\/\/mohamedyamani.com\/blog\/understanding-the-box-model-in-css\/","guid":"https:\/\/mohamedyamani.com\/blog\/understanding-the-box-model-in-css\/","description":"I explain in this article on of the fundamental concepts in CSS, the box model. What are the different types of boxes as well as the box sizing behavior.","pubDate":"Sat, 06 Nov 2021 00:00:00 GMT","category":["css","web-development","basics"]},{"title":"Helping Older Browsers Understand HTML5","link":"https:\/\/mohamedyamani.com\/blog\/helping-older-browsers-understand-html5\/","guid":"https:\/\/mohamedyamani.com\/blog\/helping-older-browsers-understand-html5\/","description":"In this blog article I explain how older verions of web browsers interpret unknown HTML5 elements, how to help them with that, and the recommended approach to that.","pubDate":"Fri, 06 Aug 2021 00:00:00 GMT","category":["html","browser-compatibility","web-development"]},{"title":"Basic Introduction to the Internet and the Web","link":"https:\/\/mohamedyamani.com\/blog\/basic-introduction-to-the-internet-and-the-web\/","guid":"https:\/\/mohamedyamani.com\/blog\/basic-introduction-to-the-internet-and-the-web\/","description":"I explain in this article what the internet is, how it works and what happens under the hood when you open a page using your web browser, as well as concepts like IP addresses, DNS, servers and HTTP.","pubDate":"Sat, 24 Jul 2021 00:00:00 GMT","category":["networking","basics"]},{"title":"Primitive Types in Java","link":"https:\/\/mohamedyamani.com\/blog\/primitive-types-in-java\/","guid":"https:\/\/mohamedyamani.com\/blog\/primitive-types-in-java\/","description":"I explain in this article what are primitives in Java with a mental model of memory as well as the different primitive types Java offers.","pubDate":"Wed, 05 May 2021 00:00:00 GMT","category":["java","basics"]},{"title":"CSS Class vs ID Selectors \u2014 Understanding the Difference!","link":"https:\/\/mohamedyamani.com\/blog\/css-class-vs-id-selectors\/","guid":"https:\/\/mohamedyamani.com\/blog\/css-class-vs-id-selectors\/","description":"In this article I break down two CSS selectors, classes and ids, how to use them to select HTML elements as well the difference between them.","pubDate":"Sun, 21 Mar 2021 00:00:00 GMT","category":["css","web-development","basics"]},{"title":"Underscores and Naming Conventions in Python","link":"https:\/\/mohamedyamani.com\/blog\/underscores-and-naming-conventions-in-python\/","guid":"https:\/\/mohamedyamani.com\/blog\/underscores-and-naming-conventions-in-python\/","description":"I explain in this blog post what PEP8 is and the general style guidelines it offers for Python for the different use-cases.","pubDate":"Sun, 21 Mar 2021 00:00:00 GMT","category":"python"},{"title":"Difference Between var and let in JavaScript","link":"https:\/\/mohamedyamani.com\/blog\/difference-between-var-and-let-in-js\/","guid":"https:\/\/mohamedyamani.com\/blog\/difference-between-var-and-let-in-js\/","description":"In this article I explain two binding keywords in JavaScript that are used to declare variables: var and let, what is the difference between them and which one to use.","pubDate":"Fri, 19 Mar 2021 00:00:00 GMT","category":["javascript","web-development","basics"]},{"title":"What is CSS? \ud83e\udd14","link":"https:\/\/mohamedyamani.com\/blog\/what-is-css\/","guid":"https:\/\/mohamedyamani.com\/blog\/what-is-css\/","description":"I briefly explain in this article what CSS is showcasing its presentational part for web pages with a code snippet.","pubDate":"Wed, 17 Mar 2021 00:00:00 GMT","category":["css","web-development","basics"]},{"title":"What is HTML? \ud83e\udd14","link":"https:\/\/mohamedyamani.com\/blog\/what-is-html\/","guid":"https:\/\/mohamedyamani.com\/blog\/what-is-html\/","description":"I briefly introduce in this article what HTML is and the role it plays in web pages with some code snippet examples.","pubDate":"Sun, 14 Mar 2021 00:00:00 GMT","category":["html","web-development","basics"]},{"title":"My First Experience in Google Hash Code","link":"https:\/\/mohamedyamani.com\/blog\/my-first-experience-in-google-hashcode\/","guid":"https:\/\/mohamedyamani.com\/blog\/my-first-experience-in-google-hashcode\/","description":"I share in this article the story of my first experience in the Google Hash Code competition and how I got obliterated.","pubDate":"Fri, 12 Mar 2021 00:00:00 GMT","category":"personal"},{"title":"Big-O Notation and Time Complexity Explained!","link":"https:\/\/mohamedyamani.com\/blog\/big-o-notation-and-time-complexity-explained\/","guid":"https:\/\/mohamedyamani.com\/blog\/big-o-notation-and-time-complexity-explained\/","description":"I explain in this article what is the Big-O Notation, why it is important for engineers and the estimation of some common logic.","pubDate":"Mon, 22 Feb 2021 00:00:00 GMT","category":["algorithms","basics"]},{"title":"What are Algorithms and Data Structures?","link":"https:\/\/mohamedyamani.com\/blog\/what-are-algorithms-and-data-structures\/","guid":"https:\/\/mohamedyamani.com\/blog\/what-are-algorithms-and-data-structures\/","description":"I briefly explain in this article what algorithms and data structures are with some real world examples.","pubDate":"Mon, 15 Feb 2021 00:00:00 GMT","category":["algorithms","data-structures","basics"]},{"title":"What is Programming? \ud83d\udc69\u200d\ud83d\udcbb","link":"https:\/\/mohamedyamani.com\/blog\/what-is-programming\/","guid":"https:\/\/mohamedyamani.com\/blog\/what-is-programming\/","description":"My first blog article where I introduce what programming is in practical terms as well as some valuable tips.","pubDate":"Fri, 29 Jan 2021 00:00:00 GMT","category":"basics"},{"title":"Your Best Friend Before Google in Python! \ud83d\udc69\u200d\ud83d\udcbb","link":"https:\/\/mohamedyamani.com\/blog\/your-best-friend-before-google-in-python\/","guid":"https:\/\/mohamedyamani.com\/blog\/your-best-friend-before-google-in-python\/","description":"I share in this article the first source you should refer to before Google when it comes to Python, it is the built in manual.","pubDate":"Fri, 29 Jan 2021 00:00:00 GMT","category":["python","tips-and-tricks"]}]}}