<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Becoming.]]></title><description><![CDATA[This Blog is all about how i become a Software Developer from scratch.]]></description><link>https://blog.rakeshraj.tech</link><generator>RSS for Node</generator><lastBuildDate>Sat, 16 May 2026 06:37:56 GMT</lastBuildDate><atom:link href="https://blog.rakeshraj.tech/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[Linux Command every Developers should know.]]></title><description><![CDATA[Why Linux ? not Windows ?
Well Linux is most used server based Operating system and most back-end servers run Linux and knowing Linux commands is important to access the Linux terminal.
Basic Linux Commands:
pwd = print working directory
ls = list al...]]></description><link>https://blog.rakeshraj.tech/basic-linux-commands</link><guid isPermaLink="true">https://blog.rakeshraj.tech/basic-linux-commands</guid><category><![CDATA[linux for beginners]]></category><category><![CDATA[Linux]]></category><category><![CDATA[linux-commands]]></category><category><![CDATA[backend]]></category><category><![CDATA[learn coding]]></category><dc:creator><![CDATA[N Rakesh Raj]]></dc:creator><pubDate>Mon, 15 Dec 2025 17:42:33 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1765819954569/c23eb78c-9989-4dcf-bfc7-5df8370204f6.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h3 id="heading-why-linux-not-windows">Why Linux ? not Windows ?</h3>
<p>Well Linux is most used server based Operating system and most back-end servers run Linux and knowing Linux commands is important to access the Linux terminal.</p>
<h3 id="heading-basic-linux-commands">Basic Linux Commands:</h3>
<pre><code class="lang-Bash"><span class="hljs-built_in">pwd</span> = <span class="hljs-built_in">print</span> working directory
ls = list all the items <span class="hljs-keyword">in</span> the directory
ls -l = list of all items with full detail (long format)
ls -a = list all the files including hidden
mkdir dir-name= create new directory(folder)
touch file-name = create new file
cat = view file contents
rm file-name = delete file
rm -r dir-name = delete dir
cp file-name copy-file-name = copy the file to another file
cp -r dir-name copy-dir-name = copy the complete directory
<span class="hljs-built_in">echo</span> <span class="hljs-string">"text"</span> &gt; file-name = write <span class="hljs-keyword">in</span> the file
    -by using <span class="hljs-built_in">echo</span> we also create new file with text init

mv teste.txt tester.txt = rename the file
mv filename destination = move the file
less file-name = to view file
head file-name = <span class="hljs-built_in">print</span> first 10 lines of the file
tail file-name = <span class="hljs-built_in">print</span> last 10 lines of the file
head -n 5 file-name = <span class="hljs-built_in">print</span> first n number of lines <span class="hljs-keyword">in</span> the file ( here first 5 lines)
tail -n 5 file-name = <span class="hljs-built_in">print</span> last n number of lines <span class="hljs-keyword">in</span> the file ( here last 5 lines)
tail -f filename = <span class="hljs-built_in">print</span> last 10 lines untill we stop by ctrl+c ( used <span class="hljs-keyword">for</span> live logs)

grep word file-name = find specific word inside the file ( <span class="hljs-keyword">case</span> sensitive)
grep -i word file-name = <span class="hljs-keyword">case</span> insensitive search
grep -n word file-name = shows line number <span class="hljs-built_in">where</span> that word exist
find . -name <span class="hljs-string">"filename"</span> = find the file by name ( <span class="hljs-keyword">case</span> sensitive)
find . -iname <span class="hljs-string">"filenmae"</span> = <span class="hljs-keyword">case</span> insensitive
find . -<span class="hljs-built_in">type</span> -f = find the files
find . -<span class="hljs-built_in">type</span> -d = find the directories
find . -size +1M = find the file with size more than 1mb 
find . -size -1M = find the file with size less than 1mb 
find . -name <span class="hljs-string">"*.log"</span> -<span class="hljs-built_in">exec</span> grep ERROR {} \; = Search text inside found files
</code></pre>
<h3 id="heading-will-it-help-me-to-become-a-back-end-developer">Will it help me to become a Back-end Developer ?</h3>
<p>Just learning Linux Commands won’t have you a Back-end Developer, Linux is just OS which is most used for servers , so learning it will help in the long run.</p>
<p>We need more than Basic Linux commands to be a Back-end Developer. Read the Article about what is Back-end Development?<br />The Article is Available at <a target="_blank" href="http://blog.rakeshraj.tech">Becoming.</a></p>
]]></content:encoded></item><item><title><![CDATA[Getting Started with Angular: A Beginner's Guide]]></title><description><![CDATA[What is Angular?
Angular is front-end Framework developed by Google. its is based of JavaScript/TypeScript . I prefer TypeScript for more secure compared to JS.
Installation Guide.

we need latest node.js to use angular in our machine

Install node.j...]]></description><link>https://blog.rakeshraj.tech/getting-started-with-angular-a-beginners-guide</link><guid isPermaLink="true">https://blog.rakeshraj.tech/getting-started-with-angular-a-beginners-guide</guid><category><![CDATA[Angular]]></category><category><![CDATA[TypeScript]]></category><category><![CDATA[Google]]></category><category><![CDATA[Frontend Development]]></category><dc:creator><![CDATA[N Rakesh Raj]]></dc:creator><pubDate>Wed, 18 Jun 2025 04:50:24 GMT</pubDate><content:encoded><![CDATA[<h2 id="heading-what-is-angular">What is Angular?</h2>
<p>Angular is front-end Framework developed by Google. its is based of JavaScript/TypeScript . I prefer TypeScript for more secure compared to JS.</p>
<h2 id="heading-installation-guide">Installation Guide.</h2>
<ul>
<li><p>we need latest node.js to use angular in our machine</p>
<ul>
<li><p>Install node.js from <a target="_blank" href="https://nodejs.org/en/download">https://nodejs.org/en/download</a> (LTS version).</p>
</li>
<li><p>After installing Node.js , open cmd and check if node is installed by typing</p>
<pre><code class="lang-powershell">  node -<span class="hljs-literal">-version</span>
</code></pre>
</li>
</ul>
</li>
<li><p>After installing node.js , we need to install angular cli by typing this command in CMD</p>
<pre><code class="lang-powershell">  npm install @angular/<span class="hljs-built_in">cli</span>
</code></pre>
</li>
<li><p>check id angular cli is installed by typing this command in cmd</p>
<pre><code class="lang-powershell">  ng -<span class="hljs-literal">-version</span>
</code></pre>
</li>
</ul>
<h2 id="heading-first-angular-project">First Angular Project .</h2>
<p>In CMD type the following commands one by one</p>
<pre><code class="lang-powershell">//ng new projectname
ng new Hello<span class="hljs-literal">-world</span>
code .
</code></pre>
<p>If you need zoneless project then Y else N. =&gt; zoneless project is nothing but project without <code>zone.js.</code></p>
<p>Zoneless" in Angular refers to a new paradigm for managing change detection without relying on <code>zone.js</code></p>
<p>Choose the Style sheet you need to use. CSS/SCSS/LESS.</p>
<p>After completing the project should look like</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1750220465454/f7c06076-e9c8-47d0-bf4b-78352832fedf.png" alt /></p>
<ol>
<li><p><code>app.ts</code> <strong>→</strong> Main file where we mostly work</p>
</li>
<li><p>app.css <strong>→</strong> style</p>
</li>
<li><p><code>app.html</code> <strong>→</strong> html file which holds the <code>app.ts</code></p>
</li>
<li><p><code>app.route.ts</code><strong>→</strong> file the contains links to another file like ( contact , about , skills ,etc.).</p>
</li>
<li><p><code>index.html</code> <strong>→</strong> main file for our website</p>
</li>
<li><p><code>styles.css</code> <strong>→</strong> Style sheet for our website</p>
</li>
<li><p><code>main.ts</code> <strong>→</strong> holds the components of the website</p>
</li>
<li><p><code>package.json</code> <strong>→</strong> contains all the dependencies and scripts to run the project</p>
</li>
</ol>
<p><strong>To Run the project</strong></p>
<pre><code class="lang-powershell">ng serve
</code></pre>
<p>in Browser visit <a target="_blank" href="http://localhost:4200/">http://localhost:4200/</a> to see the project.</p>
<p>to Stop the project click CTRL+c in the same terminal.</p>
]]></content:encoded></item><item><title><![CDATA[Docker : The Dev Container]]></title><description><![CDATA[What is Docker?
Docker is a containerization platform that packages applications into containers to run without any problem.
Before Docker/Containerization tool?
Before this for every application we use one whole server , which is so costly and diffi...]]></description><link>https://blog.rakeshraj.tech/docker-the-dev-container</link><guid isPermaLink="true">https://blog.rakeshraj.tech/docker-the-dev-container</guid><category><![CDATA[Docker]]></category><category><![CDATA[containers]]></category><category><![CDATA[Devops]]></category><category><![CDATA[Developer]]></category><category><![CDATA[Kubernetes]]></category><category><![CDATA[learning]]></category><category><![CDATA[devcontainer]]></category><dc:creator><![CDATA[N Rakesh Raj]]></dc:creator><pubDate>Thu, 22 May 2025 10:57:04 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1747911207826/fae398d6-560b-4ef5-9bb4-a347b113ba24.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2 id="heading-what-is-docker">What is Docker?</h2>
<p>Docker is a containerization platform that packages applications into containers to run without any problem.</p>
<h2 id="heading-before-dockercontainerization-tool">Before Docker/Containerization tool?</h2>
<p>Before this for every application we use one whole server , which is so costly and difficult to maintain ,<br />so VMware solved that problem by using Virtual machines .</p>
<p>Even in Virtual Machines there are many flaws like,</p>
<ul>
<li><p>Dedicated OS for each application</p>
</li>
<li><p>Not fast enough</p>
</li>
<li><p>Dedicated storage</p>
</li>
<li><p>Dedicated hardware &amp; so on…..</p>
</li>
</ul>
<p>Before Tools like Docker used in market , we have a Problem “<strong>IT works on my machine“.</strong></p>
<p>Docker solved All the Problems.</p>
<h2 id="heading-containers">Containers</h2>
<p>Containers are collection of thing we need to run our applications.</p>
<p>It contains</p>
<ul>
<li><p>Base OS (mostly light weight OS)</p>
</li>
<li><p>Infrastructure</p>
</li>
<li><p>Container Engine</p>
</li>
<li><p>Libraries needed to run the application</p>
</li>
<li><p>Applications</p>
</li>
</ul>
<h3 id="heading-virtual-machines-vs-containers">Virtual Machines VS Containers</h3>
<p>In Virtual Machines we need multiple OS to run multiple Application<br />But In Containers we just one OS for multiple Applications .</p>
<p>We use Container engine to run Multiple apps in single OS.</p>
<p><img src="https://media.licdn.com/dms/image/v2/D4D12AQGqjSqEGElq1w/article-inline_image-shrink_1500_2232/article-inline_image-shrink_1500_2232/0/1688608296456?e=1752710400&amp;v=beta&amp;t=LohT337kT0HigtTGslyPDKnPU6bnEBAb_AgclyReDAk" alt="Docker Vs Virtual Machines" /></p>
<h2 id="heading-installation">Installation</h2>
<h3 id="heading-windows">Windows</h3>
<p>Install Docker Desktop + WSL from ( <a target="_blank" href="https://docs.docker.com/desktop/setup/install/windows-install/">Windows OS</a> ).</p>
<h3 id="heading-mac">Mac</h3>
<p>Install Docker Desktop from ( <a target="_blank" href="https://docs.docker.com/desktop/setup/install/mac-install/">Mac OS</a> ).</p>
<h3 id="heading-linux">Linux</h3>
<p>Install Docker Engine not Docker Desktop from ( <a target="_blank" href="https://docs.docker.com/desktop/setup/install/linux/">Linux</a> ).</p>
<h2 id="heading-parts-of-docker-desktop-docker">Parts of Docker Desktop / Docker</h2>
<p>Docker Runtime.</p>
<p>Docker Engine.</p>
<p>Docker Orchestration.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1747852468595/f6191220-12ba-4175-9a1f-bd0a0280876d.png" alt /></p>
<h2 id="heading-docker-runtime">Docker Runtime</h2>
<p>Basically allow us to Start/stop the container.</p>
<ul>
<li><p>runC (low level).</p>
</li>
<li><p>containerD.</p>
<ul>
<li><p>getting Data /internet.</p>
</li>
<li><p>manage runC.</p>
</li>
</ul>
</li>
</ul>
<h2 id="heading-docker-engine">Docker Engine</h2>
<p>It contains Docker CLI , Rest API , DockerD(server) , Daemon .</p>
<p>Rest api is used to bridge between Sever and CLI .</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1747853086674/ada005e9-d758-4844-a4af-3fa11eecd1ee.png" alt /></p>
<h2 id="heading-docker-orchestration">Docker Orchestration</h2>
<p>This manages the Containers .</p>
<p>Kubernetes is one of the orchestration tool.</p>
<h2 id="heading-docker-images">Docker Images</h2>
<p>Its a file that contains all the instructions to create a container for our applications.</p>
<p>We can Create Docker Images using Dockerfile.<br />We can Create Container using Docker Image.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1747853871701/1374f6dc-5ad5-4bbc-8cec-3da9ada50266.jpeg" alt class="image--center mx-auto" /></p>
<h2 id="heading-docker-cli-commands">Docker CLI commands</h2>
<pre><code class="lang-powershell">// docker run image<span class="hljs-literal">-name</span>
docker run hello<span class="hljs-literal">-world</span>
</code></pre>
<p><mark>docker run</mark> - it will run the docker image if it is locally available or its download it from Docker Hub</p>
<pre><code class="lang-powershell">docker images
</code></pre>
<p><mark>docker images</mark> - it will return the available images locally</p>
<pre><code class="lang-powershell">// docker pull image<span class="hljs-literal">-name</span>
docker pull ubuntu
//docker pull image<span class="hljs-literal">-name</span>:tag/version
docker pull ubuntu:<span class="hljs-number">16.01</span>
</code></pre>
<p><mark>docker pull</mark> - it will download the image from the Docker Hub<br /><strong>Note : if tag is not defined it will automatically download latest version</strong></p>
<pre><code class="lang-powershell">docker run <span class="hljs-literal">-it</span> ubunut
</code></pre>
<p>docker run <mark>-it</mark> ubuntu - its runs the image in interactive environment</p>
<pre><code class="lang-powershell">docker <span class="hljs-built_in">ps</span>
docker container <span class="hljs-built_in">ls</span>
</code></pre>
<p>return all running containers</p>
<pre><code class="lang-powershell">docker <span class="hljs-built_in">ps</span> <span class="hljs-literal">-a</span>
</code></pre>
<p>return all the stopped containers</p>
<pre><code class="lang-powershell">//docker <span class="hljs-built_in">rm</span> container<span class="hljs-literal">-id</span>
docker <span class="hljs-built_in">rm</span> <span class="hljs-number">4</span>f2304iua402j
</code></pre>
<p><mark>docker rm</mark> - it will remove/delete the container</p>
<pre><code class="lang-powershell">//docker rmi image<span class="hljs-literal">-id</span>
docker rmi <span class="hljs-number">4239</span>u020jasf9
</code></pre>
<p><mark>docker rmi </mark> - it remove the docker image</p>
<h2 id="heading-docker-layers">Docker Layers</h2>
<p>A Docker image is collection many files/layers</p>
<p>Each layers have a unique hash values as ID using “SHA256” representation.</p>
<p>If Two Docker images have same layer/file it will not download again from Docker Hub. it will use the already installed one for both images.</p>
<h2 id="heading-how-to-create-a-docker-image">How to Create a Docker Image?</h2>
<ol>
<li><p>create a file named “ <strong>Dockerfile</strong> “ in the requires directory/folder.</p>
</li>
<li><p>write create instruction to run the container using Linux cmd’s.</p>
</li>
<li><p>Must declare a Base image(OS) in the file.</p>
</li>
<li><p>Write the instructions need to run the applications.</p>
</li>
<li><p>save the file.</p>
</li>
</ol>
<pre><code class="lang-powershell">//docker build <span class="hljs-literal">-t</span> image:tag/version path
docker build <span class="hljs-literal">-t</span> <span class="hljs-built_in">test-image</span>:<span class="hljs-number">1.01</span> .
</code></pre>
<p>this command will build a docker image with file the mentioned directory , i mention “.” to use the same dir.</p>
<h2 id="heading-is-docker-needed-for-sde-roles-in-it-field-today">Is Docker needed for SDE roles in IT field today ?</h2>
<p>Answer is Yes and No , because Docker is tool used by Devops people but in this modern time its will be useful to learn docker and Kubernetes to standout form the crowd while Appling for a job. Its not at all compulsory for Software Developer Role still today</p>
<blockquote>
<p>Learning daily will make a big difference in a long run .<br />-rakeshraj .</p>
</blockquote>
]]></content:encoded></item><item><title><![CDATA[Why I Choose to Code in 2025]]></title><description><![CDATA[In early 2025, I decided to start something that had always felt just out of reach: learning how to code. I don’t have a computer science degree, and I’m not someone who grew up building websites or hacking games. Honestly, just a few months ago, ter...]]></description><link>https://blog.rakeshraj.tech/why-i-chose-to-code-in-2025</link><guid isPermaLink="true">https://blog.rakeshraj.tech/why-i-chose-to-code-in-2025</guid><category><![CDATA[rakeshraj22]]></category><category><![CDATA[coding]]></category><category><![CDATA[2025]]></category><category><![CDATA[Developer]]></category><dc:creator><![CDATA[N Rakesh Raj]]></dc:creator><pubDate>Sat, 10 May 2025 06:07:15 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1747117790432/c830e572-c7db-4d4f-8b76-091a41a1c234.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In early 2025, I decided to start something that had always felt just out of reach: learning how to code. I don’t have a computer science degree, and I’m not someone who grew up building websites or hacking games. Honestly, just a few months ago, terms like “JavaScript,” “terminal,” or “GitHub” felt intimidating. But something shifted this year—and I’m glad it did.</p>
<h3 id="heading-what-sparked-my-interest"><strong>What Sparked My Interest</strong></h3>
<p>Technology has always been all around me, but for a long time, I was just a user. I browsed websites, scrolled through social media, and used apps without ever thinking about how they were made. One day, while reading about how people were building amazing projects from scratch, something clicked. I thought, <em>What if I could do that too?</em></p>
<p>I started watching YouTube videos, reading beginner guides, and playing around with free courses. The more I explored, the more I realized that coding is really about solving problems and creating things—and I’ve always loved both of those.</p>
<h3 id="heading-why-2025-was-the-right-time"><strong>Why 2025 Was the Right Time</strong></h3>
<p>The world is changing fast. AI is everywhere. Remote work is more normal than ever. And tech skills are becoming the foundation for so many careers, not just traditional programming jobs. In 2025, learning to code feels more accessible than it’s ever been. There are free resources, beginner-friendly platforms, and communities that welcome newcomers like me.</p>
<p>On a personal level, I felt like it was time to challenge myself. I wanted to stop just thinking about doing something new and actually start. Coding gave me that opportunity.</p>
<h3 id="heading-what-i-want-to-build"><strong>What I Want to Build</strong></h3>
<p>Right now, my goals are simple. I want to understand how websites work. I want to build small projects, even if they’re messy or imperfect. Eventually, I’d love to create something useful—maybe a portfolio, a blog, or a tool that helps other people.</p>
<p>I’m starting with HTML, CSS, and JavaScript. I’m using free platforms like freeCodeCamp, The Odin Project, and YouTube tutorials. Every day, I learn something new, and every day, I realize how much more there is to discover—and that’s exciting.</p>
<h3 id="heading-to-anyone-else-just-starting-youre-not-alone"><strong>To Anyone Else Just Starting: You’re Not Alone</strong></h3>
<p>If you’re thinking about learning to code, but you feel overwhelmed or unsure if you’re “techie” enough—trust me, I’ve been there. You don’t need to know everything to begin. You just need to begin.</p>
<p>We all start somewhere. And in 2025, there’s never been a better time to take that first step.</p>
]]></content:encoded></item></channel></rss>