<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Mr. Ånand</title><link>https://mranand.com/</link><description>Recent content on Mr. Ånand</description><image><url>https://dynamic-og-image-generator.vercel.app/api/generate?title=Technical+Writer%2C+Developer+Advocate&amp;author=Mr.+%C3%85nand&amp;websiteUrl=mranand.com&amp;avatar=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F73425223%3Fv%3D4&amp;theme=default</url><link>https://dynamic-og-image-generator.vercel.app/api/generate?title=Technical+Writer%2C+Developer+Advocate&amp;author=Mr.+%C3%85nand&amp;websiteUrl=mranand.com&amp;avatar=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F73425223%3Fv%3D4&amp;theme=default</link></image><generator>Hugo -- gohugo.io</generator><language>en-us</language><lastBuildDate>Sun, 02 Jun 2024 08:25:05 +0530</lastBuildDate><atom:link href="https://mranand.com/index.xml" rel="self" type="application/rss+xml"/><item><title>I Have Reviewed 150+ Technical Writers - Here’s What I Found!🔥</title><link>https://mranand.com/blogs/reviewed-150+-technical-writers---heres-what-i-found/</link><pubDate>Sun, 02 Jun 2024 08:25:05 +0530</pubDate><guid>https://mranand.com/blogs/reviewed-150+-technical-writers---heres-what-i-found/</guid><description>Technical Writing 101</description><content:encoded><![CDATA[<p>Before starting the main discussions, let&rsquo;s have a quick background on how I reviewed 150+ technical writers. I was searching for a few good technical writers who could publish great blogs about AI/ML, web development tutorials, or even general articles. For this, I reviewed technical writers from Hashnode, Dev, Medium, other platforms, and many from the portfolios shared on my X post. Most were good writers, but their profiles lacked a few things as technical writers.</p>
<p>In this article, I&rsquo;ll be sharing my findings from their portfolios so that you can make your profile better as a technical writer.</p>
<blockquote>
<p><strong>This article addresses beginners and writers eager to improve themselves as technical writers.</strong></p>
</blockquote>
<h2 id="casual-writer-or-technical-writer">Casual Writer or Technical Writer</h2>
<p>Many writers have published a few articles based on their learnings, but this doesn&rsquo;t necessarily make them technical writers. These articles may be as brief as social media posts, raising doubts about whether the authors can produce substantial technical blogs. Being a technical writer means regularly publishing articles that cover a diverse range of topics in a well-explained and detailed manner.</p>
<p>It&rsquo;s important to differentiate between those who write occasional technical briefs and dedicated technical writers who produce comprehensive and in-depth articles. While casual writers may create technically accurate content, their work often lacks the depth and detail required for true technical writing.</p>
<p>This distinction is crucial, as technical writing demands not only expertise but also the ability to convey complex information clearly in a professional or simple manner.</p>
<blockquote>
<p><strong>Don&rsquo;t write just for money, write if you love or care to contribute to the tech community as a writer.</strong></p>
</blockquote>
<h2 id="lack-of-ownership">Lack of Ownership</h2>
<p>I&rsquo;ve observed that many writers don&rsquo;t take full ownership of their work. Even though they have articles published on company blogs or platforms like freeCodeCamp, these pieces often don&rsquo;t make it into their personal portfolios or websites.</p>
<p>Scattered links aren&rsquo;t effective, even for established writers. It&rsquo;s important to claim your content and make sure your name is prominently associated with it. Here are some steps to improve your ownership:</p>
<ol>
<li>
<p><strong>Take Credit for Your Work</strong>: Make sure your name is on every article you write. If you&rsquo;re publishing on third-party platforms, ask for a byline or include a headshot.</p>
</li>
<li>
<p><strong>Use a Professional Profile Picture</strong>: Adding a professional profile picture helps readers connect with you on a personal level.</p>
</li>
<li>
<p><strong>Centralize Your Work</strong>: Collect all your published articles in one place, such as a personal website or an online portfolio. This makes it easier for potential clients or employers to see the evidence of your work.</p>
</li>
</ol>
<p>By taking these steps, you can better showcase your skills and accomplishments, making it easier for others to recognize and appreciate your work.</p>
<div class="sponsor-card">
  <a href="https://tldr.tech/signup?utm_source=TheSophomoreChronicle&amp;utm_campaign=TheSophomoreChronicle-cpa-campaign&amp;utm_medium=newsletter-sponsorship" target="_blank" rel="noopener noreferrer" class="sponsor-card__link">
    <img src="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSQ2hELfr8tjOfIMJ4h2zYJdkKBDL2iG45NAg&amp;s" alt="TLDR Newsletter" class="sponsor-card__image">
    <div class="sponsor-card__content">
      <h3 class="sponsor-card__title">TLDR Newsletter</h3>
      <p class="sponsor-card__text">This article is supported by TLDR Newsletter</p>
    </div>
  </a>
</div>

<style>
.sponsor-card {
  display: flex;
  align-items: center;
  background: linear-gradient(var(--tertiary),var(--tertiary))padding-box,linear-gradient(to right,#1fa034,#d1a21f)border-box;
  border: 3px solid transparent;
  border-radius: 8px;
  overflow: hidden;
  transition: box-shadow 0.3s ease;
  
}
.sponsor-card:hover {
  background: linear-gradient(var(--tertiary),var(--tertiary))padding-box,linear-gradient(to right,#d1a21f,#1fa034)border-box;
  border: 3px solid transparent;
}
.sponsor-card__link {
  display: flex;
  text-decoration: none;
  color: inherit;
  width: 100%;
}
.sponsor-card__image {
  width: 150px;
  height: auto;
  display: block;
}
.sponsor-card__content {
  padding: 16px;
  flex: 1;
}
.sponsor-card__title {
  margin: 0;
  font-size: 1.25em;
  font-weight: bold;
}
.sponsor-card__text {
  margin: 8px 0 0;
  font-size: 1em;
}
</style>

<h2 id="no-personal-profiles">No Personal Profiles</h2>
<p>Another significant gap I noticed is the absence of personal blogging profiles among many technical writers. While contributing to company blogs or external platforms can be valuable, having a personal blog that you control is essential for establishing your unique voice and showcasing your expertise.</p>
<p>A personal blog allows you to:</p>
<ul>
<li>
<p><strong>Demonstrate Expertise</strong>: Regularly publish content that highlights your knowledge and skills in technical writing.</p>
</li>
<li>
<p><strong>Showcase Work</strong>: Share detailed case studies, project overviews, and examples of your writing.</p>
</li>
<li>
<p><strong>Build Authority</strong>: Establish yourself as a thought leader in your field by discussing industry trends, best practices, and innovative techniques.</p>
</li>
<li>
<p><strong>Engage with Community</strong>: Foster a community of peers, potential clients, and employers who can interact with your content, providing feedback and building professional relationships.</p>
</li>
<li>
<p><strong>Enhance SEO</strong>: Improve your visibility online through search engine optimization, making it easier for others to find and connect with you.</p>
</li>
</ul>
<p>Investing in a personal blog can significantly enhance your career prospects and professional reputation, offering a platform that you fully control to present your best work and insights.</p>
<h2 id="lack-of-branding">Lack of Branding</h2>
<p>Another significant gap is the lack of personal branding among many technical writers. Closely related to personal profiles, personal branding involves establishing a unique identity that sets you apart from others in your field. It entails consistently presenting yourself and your work in a way that reflects your values, expertise, and professional goals.</p>
<p>Effective personal branding can help you:</p>
<ul>
<li>
<p><strong>Stand Out in a Crowded Market</strong>: Differentiate yourself from other technical writers by showcasing your unique skills and perspective.</p>
</li>
<li>
<p><strong>Attract More Opportunities</strong>: Gain visibility and appeal to potential clients, employers, and collaborators.</p>
</li>
<li>
<p><strong>Command Higher Rates</strong>: Establish a reputation for quality and expertise, allowing you to charge premium rates for your services.</p>
</li>
</ul>
<p>Building a strong personal brand requires a strategic approach, including:</p>
<ul>
<li>
<p><strong>A Professional Website</strong>: Create a central hub for your portfolio, services, and contact information.</p>
</li>
<li>
<p><strong>A Cohesive Social Media Presence</strong>: Maintain consistent and professional profiles across various platforms.</p>
</li>
<li>
<p><strong>Regular Audience Engagement</strong>: Share your insights through blogs, articles, or speaking engagements to demonstrate your knowledge and stay connected with your audience.</p>
</li>
</ul>
<p>Investing in personal branding can significantly enhance your career prospects and professional reputation, positioning you as a leader in your field.</p>
<blockquote>
<p><strong>for eg; to see how branding helps, search &ldquo;Astrodevil&rdquo; on Google and let me know in the comments what you found.😅</strong></p>
</blockquote>
<p><strong>Keep this in mind:</strong></p>
<style>
  .callout {
    position: relative;
    margin: 1rem 0;
    display: flex;
    border-radius: 0.375rem;
    border: 1px solid #C05621;  
    background-color: #FFFAF0;  
    padding: 0.75rem;
    color: #7B341E;  
  }
  .dark .callout {
    border-color: rgba(255, 152, 96, 0.2);  
    background-color: rgba(255, 152, 96, 0.2);  
    color: rgba(255, 152, 96, 1);  
  }
  .emoji {
    padding-right: 0.75rem;
    font-size: 1.25rem;
  }
  .callout-info {
    border-color: #2C5282;  
    background-color: #EBF8FF;  
    color: #2A4365;  
  }
  .dark .callout-info {
    border-color: rgba(66, 153, 225, 0.2);  
    background-color: rgba(66, 153, 225, 0.2);  
    color: rgba(66, 153, 225, 1);  
  }
  .callout-warning {
    border-color: #B7791F;  
    background-color: #FEFCBF;  
    color: #975A16;  
  }
  .dark .callout-warning {
    border-color: rgba(236, 201, 75, 0.2);  
    background-color: rgba(236, 201, 75, 0.2);  
    color: rgba(236, 201, 75, 1);  
  }
  .callout-error {
    border-color: #C53030;  
    background-color: #FFF5F5;  
    color: #742A2A;  
  }
  .dark .callout-error {
    border-color: rgba(245, 101, 101, 0.2);  
    background-color: rgba(245, 101, 101, 0.2);  
    color: rgba(245, 101, 101, 1);  
  }
  </style>
  
  <div class="not-prose callout" data-type="info">
    <span class="emoji pointer-events-none select-none">💡</span>
    
When applying for technical writing jobs, share a single link that includes all your live blog posts and articles. This makes it easier for employers to review your work.

</div>

<script>
document.addEventListener("DOMContentLoaded", function() {
  const callouts = document.querySelectorAll('.callout');

  callouts.forEach(function(callout) {
    const emoji = callout.querySelector('.emoji');
    const type = callout.getAttribute('data-type');

    switch(type) {
      case "info":
        callout.classList.remove('callout-default', 'callout-warning', 'callout-error');
        callout.classList.add('callout-info');
        emoji.textContent = "ℹ️";
        break;
      case "warning":
        callout.classList.remove('callout-default', 'callout-info', 'callout-error');
        callout.classList.add('callout-warning');
        emoji.textContent = "⚠️";
        break;
      case "error":
        callout.classList.remove('callout-default', 'callout-info', 'callout-warning');
        callout.classList.add('callout-error');
        emoji.textContent = "🚨";
        break;
      default:
        callout.classList.add('callout-default');
        emoji.textContent = "💡";
        break;
    }
  });
});
</script>

<style>
  .callout {
    position: relative;
    margin: 1rem 0;
    display: flex;
    border-radius: 0.375rem;
    border: 1px solid #C05621;  
    background-color: #FFFAF0;  
    padding: 0.75rem;
    color: #7B341E;  
  }
  .dark .callout {
    border-color: rgba(255, 152, 96, 0.2);  
    background-color: rgba(255, 152, 96, 0.2);  
    color: rgba(255, 152, 96, 1);  
  }
  .emoji {
    padding-right: 0.75rem;
    font-size: 1.25rem;
  }
  .callout-info {
    border-color: #2C5282;  
    background-color: #EBF8FF;  
    color: #2A4365;  
  }
  .dark .callout-info {
    border-color: rgba(66, 153, 225, 0.2);  
    background-color: rgba(66, 153, 225, 0.2);  
    color: rgba(66, 153, 225, 1);  
  }
  .callout-warning {
    border-color: #B7791F;  
    background-color: #FEFCBF;  
    color: #975A16;  
  }
  .dark .callout-warning {
    border-color: rgba(236, 201, 75, 0.2);  
    background-color: rgba(236, 201, 75, 0.2);  
    color: rgba(236, 201, 75, 1);  
  }
  .callout-error {
    border-color: #C53030;  
    background-color: #FFF5F5;  
    color: #742A2A;  
  }
  .dark .callout-error {
    border-color: rgba(245, 101, 101, 0.2);  
    background-color: rgba(245, 101, 101, 0.2);  
    color: rgba(245, 101, 101, 1);  
  }
  </style>
  
  <div class="not-prose callout" data-type="warning">
    <span class="emoji pointer-events-none select-none">💡</span>
    
Always share portfolios/profiles with live links to your blogs instead of PDF or GitHub files for better credibility.

</div>

<script>
document.addEventListener("DOMContentLoaded", function() {
  const callouts = document.querySelectorAll('.callout');

  callouts.forEach(function(callout) {
    const emoji = callout.querySelector('.emoji');
    const type = callout.getAttribute('data-type');

    switch(type) {
      case "info":
        callout.classList.remove('callout-default', 'callout-warning', 'callout-error');
        callout.classList.add('callout-info');
        emoji.textContent = "ℹ️";
        break;
      case "warning":
        callout.classList.remove('callout-default', 'callout-info', 'callout-error');
        callout.classList.add('callout-warning');
        emoji.textContent = "⚠️";
        break;
      case "error":
        callout.classList.remove('callout-default', 'callout-info', 'callout-warning');
        callout.classList.add('callout-error');
        emoji.textContent = "🚨";
        break;
      default:
        callout.classList.add('callout-default');
        emoji.textContent = "💡";
        break;
    }
  });
});
</script>

<style>
  .callout {
    position: relative;
    margin: 1rem 0;
    display: flex;
    border-radius: 0.375rem;
    border: 1px solid #C05621;  
    background-color: #FFFAF0;  
    padding: 0.75rem;
    color: #7B341E;  
  }
  .dark .callout {
    border-color: rgba(255, 152, 96, 0.2);  
    background-color: rgba(255, 152, 96, 0.2);  
    color: rgba(255, 152, 96, 1);  
  }
  .emoji {
    padding-right: 0.75rem;
    font-size: 1.25rem;
  }
  .callout-info {
    border-color: #2C5282;  
    background-color: #EBF8FF;  
    color: #2A4365;  
  }
  .dark .callout-info {
    border-color: rgba(66, 153, 225, 0.2);  
    background-color: rgba(66, 153, 225, 0.2);  
    color: rgba(66, 153, 225, 1);  
  }
  .callout-warning {
    border-color: #B7791F;  
    background-color: #FEFCBF;  
    color: #975A16;  
  }
  .dark .callout-warning {
    border-color: rgba(236, 201, 75, 0.2);  
    background-color: rgba(236, 201, 75, 0.2);  
    color: rgba(236, 201, 75, 1);  
  }
  .callout-error {
    border-color: #C53030;  
    background-color: #FFF5F5;  
    color: #742A2A;  
  }
  .dark .callout-error {
    border-color: rgba(245, 101, 101, 0.2);  
    background-color: rgba(245, 101, 101, 0.2);  
    color: rgba(245, 101, 101, 1);  
  }
  </style>
  
  <div class="not-prose callout" data-type="error">
    <span class="emoji pointer-events-none select-none">💡</span>
    
Avoid spamming DMs or links when seeking writing opportunities. Instead, create a good profile on one social media platform that aligns with your blogging profile.

</div>

<script>
document.addEventListener("DOMContentLoaded", function() {
  const callouts = document.querySelectorAll('.callout');

  callouts.forEach(function(callout) {
    const emoji = callout.querySelector('.emoji');
    const type = callout.getAttribute('data-type');

    switch(type) {
      case "info":
        callout.classList.remove('callout-default', 'callout-warning', 'callout-error');
        callout.classList.add('callout-info');
        emoji.textContent = "ℹ️";
        break;
      case "warning":
        callout.classList.remove('callout-default', 'callout-info', 'callout-error');
        callout.classList.add('callout-warning');
        emoji.textContent = "⚠️";
        break;
      case "error":
        callout.classList.remove('callout-default', 'callout-info', 'callout-warning');
        callout.classList.add('callout-error');
        emoji.textContent = "🚨";
        break;
      default:
        callout.classList.add('callout-default');
        emoji.textContent = "💡";
        break;
    }
  });
});
</script>

<style>
  .callout {
    position: relative;
    margin: 1rem 0;
    display: flex;
    border-radius: 0.375rem;
    border: 1px solid #C05621;  
    background-color: #FFFAF0;  
    padding: 0.75rem;
    color: #7B341E;  
  }
  .dark .callout {
    border-color: rgba(255, 152, 96, 0.2);  
    background-color: rgba(255, 152, 96, 0.2);  
    color: rgba(255, 152, 96, 1);  
  }
  .emoji {
    padding-right: 0.75rem;
    font-size: 1.25rem;
  }
  .callout-info {
    border-color: #2C5282;  
    background-color: #EBF8FF;  
    color: #2A4365;  
  }
  .dark .callout-info {
    border-color: rgba(66, 153, 225, 0.2);  
    background-color: rgba(66, 153, 225, 0.2);  
    color: rgba(66, 153, 225, 1);  
  }
  .callout-warning {
    border-color: #B7791F;  
    background-color: #FEFCBF;  
    color: #975A16;  
  }
  .dark .callout-warning {
    border-color: rgba(236, 201, 75, 0.2);  
    background-color: rgba(236, 201, 75, 0.2);  
    color: rgba(236, 201, 75, 1);  
  }
  .callout-error {
    border-color: #C53030;  
    background-color: #FFF5F5;  
    color: #742A2A;  
  }
  .dark .callout-error {
    border-color: rgba(245, 101, 101, 0.2);  
    background-color: rgba(245, 101, 101, 0.2);  
    color: rgba(245, 101, 101, 1);  
  }
  </style>
  
  <div class="not-prose callout" data-type="default">
    <span class="emoji pointer-events-none select-none">💡</span>
    
Technical writers with personal blogs tend to attract more opportunities organically.

</div>

<script>
document.addEventListener("DOMContentLoaded", function() {
  const callouts = document.querySelectorAll('.callout');

  callouts.forEach(function(callout) {
    const emoji = callout.querySelector('.emoji');
    const type = callout.getAttribute('data-type');

    switch(type) {
      case "info":
        callout.classList.remove('callout-default', 'callout-warning', 'callout-error');
        callout.classList.add('callout-info');
        emoji.textContent = "ℹ️";
        break;
      case "warning":
        callout.classList.remove('callout-default', 'callout-info', 'callout-error');
        callout.classList.add('callout-warning');
        emoji.textContent = "⚠️";
        break;
      case "error":
        callout.classList.remove('callout-default', 'callout-info', 'callout-warning');
        callout.classList.add('callout-error');
        emoji.textContent = "🚨";
        break;
      default:
        callout.classList.add('callout-default');
        emoji.textContent = "💡";
        break;
    }
  });
});
</script>

<h2 id="conclusion">Conclusion</h2>
<p>Reviewing over 150 technical writers has been an enlightening experience, revealing key areas for improvement and growth. Whether you&rsquo;re a casual writer or a dedicated technical writer, focusing on ownership, consistency, personal profiles, and branding can improve your work and enhance your career. By addressing these common mistakes, you can develop the skills and reputation needed to succeed in the competitive field of technical writing.</p>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>6 Must-Read Tech Newsletters to Keep You Ahead in 2024</title><link>https://mranand.com/blogs/6-must-read-tech-newsletters/</link><pubDate>Sun, 19 May 2024 10:56:05 +0530</pubDate><guid>https://mranand.com/blogs/6-must-read-tech-newsletters/</guid><description>Stay on Top of Tech Trends with These 6 Newsletters</description><content:encoded><![CDATA[<p>Keeping up with the fast-changing tech world can be tough. With so many niche, programming languages, and applications popping up, it can feel overwhelming. But don&rsquo;t worry! Newsletters can help you de-clutter things. By reading a few good newsletters, you can stay updated on important news without getting lost in endless tech landscape.</p>
<p>If you want to simplify your tech updates and stay ahead, we&rsquo;ve got you covered. Here are the top 6 tech newsletters you should subscribe to right now!</p>
<h2 id="1-tldrhttpstldrtechsignuputm_sourcethesophomorechronicleutm_campaignthesophomorechronicle-cpa-campaignutm_mediumnewsletter-sponsorship">1. <a href="https://tldr.tech/signup?utm_source=TheSophomoreChronicle&amp;utm_campaign=TheSophomoreChronicle-cpa-campaign&amp;utm_medium=newsletter-sponsorship" target="_blank" class="highlight-line">TLDR</a></h2>
<p><a href="https://tldr.tech/signup?utm_source=TheSophomoreChronicle&amp;utm_campaign=TheSophomoreChronicle-cpa-campaign&amp;utm_medium=newsletter-sponsorship" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1715775591245/048eef0f-05eb-4add-8479-d45883c7845b.png" alt=""  />
</a></p>
<p><strong>Category:</strong> AI, Web Development, DevOps, Mobile Development and 12 more</p>
<p><strong>Number of Subscribers:</strong> 1,250,000+</p>
<p><strong>Frequency:</strong> Daily</p>
<p><strong>Content:</strong> The TLDR newsletter is a daily byte-sized digest that provides concise summaries of the latest news in tech, startups, and programming. Each edition includes brief, easily digestible updates on a wide range of topics including industry trends, new product launches, funding news, and noteworthy developments in the tech world. The newsletter aims to keep readers informed and up-to-date with minimal time investment, making it a go-to source for busy professionals and tech enthusiasts.</p>
<h2 id="2-the-rundown-aihttpssparklpcopec1f3cedf8">2. <a href="https://sparklp.co/p/ec1f3cedf8" target="_blank" class="highlight-line">The Rundown AI</a></h2>
<p><a href="https://sparklp.co/p/ec1f3cedf8" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1716026690947/b0589df6-5531-432c-8255-d4ab709ce328.png" alt=""  />
</a></p>
<p><strong>Category:</strong> AI</p>
<p><strong>Number of Subscribers:</strong> 600,000+</p>
<p><strong>Frequency:</strong> Daily</p>
<p><strong>Content:</strong> The Rundown AI newsletter is a popular daily email that provides concise updates on the latest developments in artificial intelligence. Curated by AI enthusiasts Rowan Cheung, it offers a brief, 5-minute read that highlights key stories and insights from the AI world. The newsletter covers a range of topics, including computer vision, natural language processing, and robotics, offering both news summaries and practical applications of AI tools and technologies. Apart from just newsletter it has dedicated AI job boards and AI tools page too.</p>
<h2 id="3-bytebytegohttpsblogbytebytegocom">3. <a href="https://blog.bytebytego.com/" target="_blank" class="highlight-line">ByteByteGo</a></h2>
<p><a href="https://blog.bytebytego.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1716026837237/27f1d140-1f84-409e-8739-94d9ad4f8b24.png" alt=""  />
</a></p>
<p><strong>Category:</strong> System Design</p>
<p><strong>Number of Subscribers:</strong>  500,000+</p>
<p><strong>Frequency:</strong> Thrice in a Week</p>
<p><strong>Content:</strong> The ByteByteGo newsletter, authored by Alex Xu, focuses on simplifying complex system design concepts. It is a resource aimed at engineers and developers who want to enhance their understanding of system architecture and design. Each edition typically includes detailed explanations and insights into various technical topics, ranging from database management and scaling solutions to network protocols and the inner workings of large-scale systems like those used by Facebook and Uber​. The newsletter often features case studies on how major tech companies solve complex problems, deep dives into specific technologies.</p>
<h2 id="4-techcrunchhttpstechcrunchcom">4. <a href="https://techcrunch.com/" target="_blank" class="highlight-line">TechCrunch</a></h2>
<p><a href="https://techcrunch.com/newsletters/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1716028333150/8269f8e7-b838-4e6c-b433-8890d2dcc586.png" alt=""  />
</a></p>
<p><strong>Category:</strong> Startups, AI, Fintech and more</p>
<p><strong>Number of Subscribers:</strong> Unavailable</p>
<p><strong>Frequency:</strong> Daily, Weekly</p>
<p><strong>Content:</strong> The TechCrunch newsletter delivers the latest updates and insights from the tech industry, covering a wide range of topics including startups, venture capital, gadgets, apps, and Silicon Valley trends. It features breaking news, in-depth articles, and exclusive interviews with industry leaders. Subscribers can expect a curated selection of articles that highlight significant technological advancements, market movements, and innovative products, along with analysis and opinion pieces that provide context and perspective on the rapidly evolving tech landscape.</p>
<h2 id="5-ycs-newsletterhttpswwwycombinatorcomsubscribe">5. <a href="https://www.ycombinator.com/subscribe" target="_blank" class="highlight-line">YC&rsquo;s Newsletter</a></h2>
<p><a href="https://www.ycombinator.com/subscribe" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1716028494329/65f906f4-8ea6-4a86-9596-577f8d043f24.png" alt=""  />
</a></p>
<p><strong>Category:</strong> Startups, Jobs, and Events from the YC community</p>
<p><strong>Number of Subscribers:</strong> Unavailable</p>
<p><strong>Frequency:</strong> Weekly</p>
<p><strong>Content:</strong> The Y Combinator (YC) newsletter typically includes a variety of content focused on the startup ecosystem. This includes updates on YC companies, advice and insights from YC partners and successful entrepreneurs, and information about upcoming events and programs. The newsletter often highlights new product launches, funding announcements, and notable achievements by YC alumni. Additionally, it features articles on startup strategies, technology trends, and business development tips, providing valuable resources for entrepreneurs and investors alike.</p>
<h2 id="6-hacker-newsletterhttpshackernewslettercom">6. <a href="https://hackernewsletter.com/" target="_blank" class="highlight-line">Hacker Newsletter</a></h2>
<p><a href="https://hackernewsletter.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1716029124075/f92ca4c9-784d-4049-a11e-835cd0e841a9.png" alt=""  />
</a></p>
<p><strong>Category:</strong> AI, Web Development, DevOps, Mobile Development and 12 more.</p>
<p><strong>Number of Subscribers:</strong> 60,000+</p>
<p><strong>Frequency:</strong> Weekly</p>
<p><strong>Content:</strong> Hackernewsletter is a weekly newsletter that curates top tech and startup news, interesting articles, and relevant tools from around the web. It includes highlights from Hacker News, insightful essays on programming, industry trends, and product updates. Each edition provides a concise and informative summary of the latest in technology and innovation, aimed at developers, entrepreneurs, and tech enthusiasts.</p>
<blockquote>
<p>Let me tell you about one more monthly newsletter, <a href="https://thepiecespost.beehiiv.com/subscribe?_bhba=ad6a87d2-49fd-4596-a3e3-2bd124562dba" target="_blank" class="highlight-line">The Pieces Post</a>. It&rsquo;s from Pieces for Developers, a workflow copilot tool. Pieces just launched Pieces Copilot+ with the world&rsquo;s first real-time &ldquo;Live Context&rdquo; for LLMs (both cloud and on-device) powered by Workstream Pattern Engine. Feel free to check and test this awesome free AI coding copilot <a href="https://x.com/getpieces" target="_blank" class="highlight-line">here</a>.</p>
</blockquote>
<h2 id="conclusion">Conclusion</h2>
<p>Staying informed about the latest trends and developments in the tech industry is crucial for professionals and enthusiasts alike. These 6 must-read tech newsletters are invaluable resources that provide a wealth of knowledge, insights, and updates. By subscribing to the ones that aligns with your interests in tech, you&rsquo;ll ensure you never miss out on important news, innovative ideas, and practical tips. Make the most of these newsletters to stay ahead of the curve and continuously fuel your passion for technology. Happy reading!</p>
<h4 id="if-you--my-content-connect-me-on--twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on  <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>Collab with Ånand🫱🏼‍🫲🏼</title><link>https://mranand.com/collabs/</link><pubDate>Mon, 04 Mar 2024 00:00:00 +0000</pubDate><guid>https://mranand.com/collabs/</guid><description>This page shows the deliverables related to the collab done recently or ongoing.</description><content:encoded><![CDATA[<h3 id="who-am-i">Who am I?</h3>
<blockquote>
<p>💡 I am a computer science student from India, currently open for freelance technical writing and remote internships in software development industry or DevRel specific roles. (Currently working as Developer Advocate)</p>
</blockquote>
<blockquote>
<p>💡 You can also connect with me on <a href="https://mobile.twitter.com/astrodevil_" target="_blank" class="highlight-line">Twitter</a>, <a href="https://www.instagram.com/codes.astro/" target="_blank" class="highlight-line">Instagram</a> and through my <a href="https://www.linkedin.com/in/amitesh1208/" target="_blank" class="highlight-line">LinkedIn</a>.</p>
</blockquote>
<blockquote>
<p>💡 I mainly write technical blogs but you can collab with me on various other content form, checkout my <strong><a href="https://passionfroot.me/mranand" target="_blank" class="highlight-line">services page</a></strong> for more details.</p>
</blockquote>
<h3 id="my-offer">My Offer!</h3>
<p>I have been writing promotional articles time to time for multiple SaaS and other platforms and it helped them to gain attention from more users, I distribute my articles across platforms and delivered few trending ones. You can check my best ones <a href="https://mranand.com/featured/" target="_blank" class="highlight-line">here</a>.</p>
<p>Example article format - <a href="https://mranand.com/blogs/top-15-must-try-ai-tools-for-professionals-in-2023/" target="_blank" class="highlight-line">https://mranand.com/blogs/top-15-must-try-ai-tools-for-professionals-in-2023/</a></p>
<h3 id="deliverables">Deliverables!</h3>
<p>You can check platform links for the latest blog done in collaboration with you.</p>
<p><strong>✨<a href="https://mranand.com/" target="_blank" class="highlight-line">Personal Website</a></strong></p>
<p><strong>✨<a href="https://astrodevil.medium.com/" target="_blank" class="highlight-line">Medium</a></strong></p>
<p><strong>✨<a href="https://blog.mranand.com/" target="_blank" class="highlight-line">Hashnode</a></strong></p>
<p><strong>✨<a href="https://dev.to/astrodevil/" target="_blank" class="highlight-line">Dev</a></strong></p>
<p><strong>✨<a href="https://tealfeed.com/astrodevil" target="_blank" class="highlight-line">Tealfeed</a></strong></p>
<p><strong>✨<a href="https://www.showwcase.com/astrodevil" target="_blank" class="highlight-line">Showwcase</a></strong></p>
<p>✨<del>Mirror</del></p>
<p><strong>✨<a href="https://devdojo.com/astrodevil/" target="_blank" class="highlight-line">Devdojo</a></strong></p>
<p>✨<del>Hackernoon</del> (Takes up to 72hrs for manual review technical articles only)</p>
<p>Just check the article and do let me know if anything needs to be changed, using the existing communication channel.</p>
<p><strong>Note:</strong> I mainly publish on my personal website first and use <a href="https://www.shopify.com/in/partners/blog/canonical-urls" target="_blank" class="highlight-line">canonical URL</a> to republish it across different platforms without impacting SEO, ranking and indexing.</p>
<h3 id="feedback">Feedback!</h3>
<p>Please share your experience with me so that I can improve. Were my deliverables satisfactory? Has this collaboration been beneficial for you? Kindly provide your honest feedback below👇🏼. Your input will assist me in enhancing my work and featuring testimonials on my website. Thank you.</p>
<div class="iframely-embed"><div class="iframely-responsive" style="height: 140px; padding-bottom: 0;"><a href="https://senja.io/p/mranand/AmCR2n" data-iframely-url="//iframely.net/PIPh5aj?card=small"></a></div></div><script async src="//iframely.net/embed.js"></script>
]]></content:encoded></item><item><title>15 Must-Visit Killer Websites For Minimalist Entrepreneurs</title><link>https://mranand.com/blogs/15-must-visit-killer-websites-for-minimalist-entrepreneurs/</link><pubDate>Sat, 02 Mar 2024 17:31:05 +0530</pubDate><guid>https://mranand.com/blogs/15-must-visit-killer-websites-for-minimalist-entrepreneurs/</guid><description>90% Developer don&amp;#39;t know about these websites.</description><content:encoded><![CDATA[<p>In a time when technology is advancing at an exponential rate, the entrepreneurial landscape has changed dramatically. The days of starting from scratch are long gone; instead, as the tech industry innovates—whether it is with artificial intelligence (AI) or the emergence of no-code platforms—aspiring entrepreneurs can now flourish without being constrained by conventional development obstacles. The timing is now more than ever to start your own business with a minimalist mindset since there are a tonne of tools and software available that make jobs easier and streamline procedures.</p>
<p>In this article, we will explore <strong>15 Must-Visit Killer Websites For Minimalist Entrepreneurs</strong>.</p>
<h2 id="1-mixohttpsdubshjjdmz8u">1. <a href="https://dub.sh/JJDMZ8u" target="_blank" class="highlight-line">Mixo</a></h2>
<p><a href="https://dub.sh/JJDMZ8u" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1709131544782/659c790c-b0a5-4930-9d90-862e519be99f.png" alt=""  />
</a></p>
<p>Mixo is one of the easiest and simplest tools to launch a business or startup. With just a short descriptive sentence, it will generate you a full website (including inner pages) using AI in under 30 seconds. Not only that, the AI has been specifically trained to create content that feels human-written and focused on high-converting principles. Every site also feels distinct since the AI has multiple styles, fonts, colors it can recommend. In minutes, you can go from an idea to a fully-functional website and start capturing your first customers.</p>
<h2 id="2-human-or-nothttpswwwhumanornotco">2. <a href="https://www.humanornot.co/" target="_blank" class="highlight-line">Human or Not</a></h2>
<p><a href="https://www.humanornot.co/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1709131754164/0d1ace43-6e42-427b-8647-cbcf398ee799.png" alt=""  />
</a></p>
<p>It&rsquo;s an AI directory where you can find AI apps for all your needs, or you can also add your own AI apps for free. It features tools from different categories like chatbots, marketing, video, SEO, finance, and many more. The Human or Not directory is growing, and more AI apps are added every week. Now you can head over to the one-stop AI directory to get few helpful tools at your fingertips.</p>
<h2 id="3-submagichttpswwwsubmagiccoviamr21">3. <a href="https://www.submagic.co/?via=mr21" target="_blank" class="highlight-line">Submagic</a></h2>
<p><a href="https://www.submagic.co/?via=mr21" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1709232227164/b5341567-67d3-4800-b301-b9395e52e0ba.png" alt=""  />
</a></p>
<p>Submagic is an online video editing platform designed to make creating engaging content easier, especially for social media. It does this by utilizing AI to automate several tasks. Submagic can automatically generate accurate captions and even add emojis and stylistic elements for a more dynamic look. Overall, Submagic caters to a wide range of content creators, helping them produce compelling and professional-looking videos for platforms like YouTube, TikTok, and Instagram.</p>
<h2 id="4-lemon-squeezyhttpswwwlemonsqueezycom">4. <a href="https://www.lemonsqueezy.com/" target="_blank" class="highlight-line">Lemon Squeezy</a></h2>
<p><a href="https://www.lemonsqueezy.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1709232683911/63355c66-bd93-4d81-b854-658accbd48ce.png" alt=""  />
</a></p>
<p>Lemon Squeezy is an all-in-one platform designed to simplify selling digital products. It caters to creators and businesses, offering features like product hosting, secure payment processing, subscription management, and global tax compliance. Whether you&rsquo;re selling software as a service (SaaS), ebooks, courses, or other digital downloads, Lemon Squeezy aims to streamline the process and empower you to focus on creating and marketing your products.</p>
<h2 id="5-passionfroothttpspassionfrootcellosoxvpia0vruh6">5. <a href="https://passionfroot.cello.so/xVpia0vRUH6" target="_blank" class="highlight-line">Passionfroot</a></h2>
<p><a href="https://passionfroot.cello.so/xVpia0vRUH6" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1709232866018/a09950fc-87ca-46fa-b0c5-c48239df635f.png" alt=""  />
</a></p>
<p>Passionfroot empowers creators with a no-code platform to manage business. They can showcase services through storefronts, simplify bookings, track finances, and build media kits, freeing up time for creating. It helps companies and creators to connect with each other for sponsorships and collabs.</p>
<h2 id="6-screen-studiohttpswwwscreenstudioaffrbb7w">6. <a href="https://www.screen.studio/?aff=RBB7w" target="_blank" class="highlight-line">Screen Studio</a></h2>
<p><a href="https://www.screen.studio/?aff=RBB7w" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1709232978564/0d44601f-9405-452b-9c55-010eb068e319.png" alt=""  />
</a></p>
<p>Screen Studio is a screen recording tool for macOS that automatically enhances your recordings, making them look polished and professional without needing editing expertise. It features smooth cursor movements, animations, and background additions, perfect for creating tutorials, presentations, and social media content.</p>
<h2 id="7-perplexityhttpswwwperplexityai">7. <a href="https://www.perplexity.ai/" target="_blank" class="highlight-line">Perplexity</a></h2>
<p><a href="https://www.perplexity.ai/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1709236976693/b3503dec-df8a-4ae0-9738-302456b6b192.png" alt=""  />
</a></p>
<p>Perplexity AI aims to empower information discovery and sharing. They offer an AI-powered search engine that understands user intent, summarizes results, and provides cited sources for trust and deeper learning. Their platform encourages conversation-style search, allowing follow-up questions and building a personalized library of discovered knowledge. A alternative to Gemini and ChatGPT you can use in your workflow.</p>
<h2 id="8-astrohttpstryastroappaffrbb7w">8. <a href="https://tryastro.app/?aff=RBB7w" target="_blank" class="highlight-line">Astro</a></h2>
<p><a href="https://tryastro.app/?aff=RBB7w" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1709286954818/44fb45f1-470d-48d8-8ec8-bfa92d501439.png" alt=""  />
</a></p>
<p>Astro, a app store optimization (ASO) tool for Apple developers, helps apps gain visibility and climb the ranks in the App Store. It empowers developers by offering insights into keyword popularity, app ranking for various keywords, and competitor analysis. This data allows developers to optimize their app&rsquo;s title, subtitle, description, and screenshots for better discoverability. Astro&rsquo;s user-friendly interface, data visualization, and regular updates make it a valuable resource for any Apple developer aiming to increase app downloads.</p>
<h2 id="9-dubcohttpsdubco">9. <a href="https://dub.co/" target="_blank" class="highlight-line">Dub.co</a></h2>
<p><a href="https://dub.co/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1709290293280/6ef6f096-38ed-473e-bd82-add950b093b4.png" alt=""  />
</a></p>
<p>Dub.co isn&rsquo;t just another link shortener. It&rsquo;s an open-source link management platform built for modern marketing teams. Dub.co allows users to create, share, and track short links using their own custom domain, providing valuable insights into clicks and performance. They offer features like API integration, built-in QR code generation, and team collaboration, making it a comprehensive link management solution.</p>
<h2 id="10-potionhttpspotionsoviamr">10. <a href="https://potion.so/?via=mr" target="_blank" class="highlight-line">Potion</a></h2>
<p><a href="https://potion.so/?via=mr" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1709290388643/39598d19-31ac-4bc5-9010-809f2c06a7b8.png" alt=""  />
</a></p>
<p>Potion is a website builder that magically transforms your Notion content into a sleek, fast-loading website in minutes. Forget coding or complex CMS platforms. Simply connect your Notion workspace, customize the look with the live editor, and let Potion do the rest. Enjoy SEO-friendly features to reach your audience and focus on creating while Potion handles the technical side.</p>
<h2 id="11-beehiivhttpswwwbeehiivcomviamr-anand">11. <a href="https://www.beehiiv.com/?via=mr-anand" target="_blank" class="highlight-line">Beehiiv</a></h2>
<p><a href="https://www.beehiiv.com/?via=mr-anand" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1709291090807/1b850ae9-8f2f-4772-84da-58af51d78066.png" alt=""  />
</a></p>
<p>Beehiiv is a one-stop shop for creators to build, grow, and monetize their newsletters. From crafting beautiful emails without coding to managing subscribers, offering paid subscriptions, and analyzing performance, Beehiiv empowers creators with the tools they need to thrive. With a focus on user-friendliness and creator control, Beehiiv aims to be your partner in newsletter success. Beehiiv also offers monetization opportunity to its users.</p>
<h2 id="12-senjahttpssenjacellosoo9qeo06tdok">12. <a href="https://senja.cello.so/o9qEO06tDOK" target="_blank" class="highlight-line">Senja</a></h2>
<p><a href="https://senja.cello.so/o9qEO06tDOK" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1709390602762/cf350376-f5b7-4444-b17f-fd85de84a91a.png" alt=""  />
</a></p>
<p>Senja empowers businesses to collect and share glowing customer testimonials, fostering trust and credibility. Its platform simplifies the process with beautiful collection forms, automated invitations, and social media review import. Showcase testimonials across your website and marketing materials with stunning widgets and Wall of Love features. Senja offers a free tier and scalable plans to fit any business need.</p>
<h2 id="13-bardeenhttpswwwbardeenairefmtk5mjm">13. <a href="https://www.bardeen.ai/?ref=mtk5mjm" target="_blank" class="highlight-line">Bardeen</a></h2>
<p><a href="https://www.bardeen.ai/?ref=mtk5mjm" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1709404062513/ab5a1e9f-0da5-414e-bcda-6070c06ba5b5.png" alt=""  />
</a></p>
<p>Bardeen AI empowers users to reclaim their time with workflow automation. Its no-code interface lets anyone build automations, connecting seamlessly with popular applications like Gmail and Slack. AI-powered features handle tasks like data extraction and email personalization, while customization ensures automations fit your specific needs. Free up your time and focus on what matters most with Bardeen AI.</p>
<h2 id="14-browse-aihttpswwwbrowseaiviamr-anand">14. <a href="https://www.browse.ai/?via=mr-anand" target="_blank" class="highlight-line">Browse AI</a></h2>
<p><a href="https://www.browse.ai/?via=mr-anand" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1709404222290/790ff34b-08fd-4247-b6d0-7e26162a3671.png" alt=""  />
</a></p>
<p>Forget complex coding - Browse AI makes website data extraction a breeze, even for non-technical users. Train &ldquo;robots&rdquo; in minutes to extract specific data like product details, prices, or social media content, and auto-fill it into spreadsheets. Schedule monitoring to stay updated on changes and access pre-built robots for popular tasks. Browse AI empowers anyone to manage website data efficiently.</p>
<h2 id="15-pikastylehttpspikastyleviamr">15. <a href="https://pika.style/?via=mr" target="_blank" class="highlight-line">Pika.style</a></h2>
<p><a href="https://pika.style/?via=mr" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1709406618972/367c0b7a-d962-4c29-b8d5-f1ccbde69806.png" alt=""  />
</a></p>
<p>Forget complex design software and coding. Pika.style lets you create stunning screenshots and mockups in a flash, even with no coding experience. Its intuitive interface and pre-designed templates make design easy, while offering customization options for a personal touch. Capture screenshots directly from your browser or code editor with Pika&rsquo;s extensions, Whether you need visuals for presentations, marketing, or social media, Pika.style empowers you to design with ease.</p>
<p><strong>I hope these tools and websites will help you in your entrepreneurial works.</strong></p>
<h4 id="if-you--my-content-connect-me-on--twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on  <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>Top 15 SaaS to Help Professionals in 2024</title><link>https://mranand.com/blogs/top-15-saas-to-help-professionals-in-2024/</link><pubDate>Sun, 07 Jan 2024 10:56:05 +0530</pubDate><guid>https://mranand.com/blogs/top-15-saas-to-help-professionals-in-2024/</guid><description>90% Developer don&amp;#39;t know about these tools - Indie Hackers Edition. SaaS tools are revolutionizing operations and simplifying tasks for both companies and individuals. These platforms are essential for tech enthusiasts, as they handle specific tasks efficiently. Offering speed, effectiveness, and cost-effectiveness, SaaS tools are transformative in the digital landscape. In this blog we will explore some great SaaS tools developed by indie hackers in public. Stay tuned for more insights!</description><content:encoded><![CDATA[<p>SaaS tools are revolutionizing operations and simplifying tasks for both companies and individuals. These platforms are essential for tech enthusiasts, as they handle specific tasks efficiently. Offering speed, effectiveness, and cost-effectiveness, SaaS tools are transformative in the digital landscape. In this blog we will explore some great SaaS tools developed by indie hackers in public. Stay tuned for more insights!</p>
<h2 id="1-remoteokhttpsremoteokcom">1. <a href="https://remoteok.com/" target="_blank" class="highlight-line">remoteOK</a></h2>
<p><a href="https://remoteok.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704563154868/240ab040-a9c6-4d75-9364-4ba8a3aa19e5.png" alt=""  />
</a></p>
<p>RemoteOK is a job board platform that focuses on remote job opportunities. It aggregates remote job listings from various sources, making it a convenient hub for individuals seeking positions that allow them to work from anywhere. The platform covers a wide range of industries and provides a user-friendly interface for job seekers to explore and apply for remote positions.</p>
<h2 id="2-follliohttpsfolllio">2. <a href="https://folll.io/" target="_blank" class="highlight-line">Folllio</a></h2>
<p><a href="https://folll.io/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704563463895/55edba87-d2f2-4852-9da3-980bf9103072.png" alt=""  />
</a></p>
<p>Folllio, your ultimate digital brand showcase. Seamlessly present your personal brand to the world with this all-in-one platform. In the digital age, where your online presence is your new handshake, Folllio consolidates every aspect of your professional and personal brand into a sleek, user-friendly space. It&rsquo;s not just a link in your bio; Folllio is a portal to the multi-dimensional you, offering endless possibilities by housing your entire professional portfolio and personal passions in one convenient link.</p>
<h2 id="3-firecamphttpsfirecampdev">3. <a href="https://firecamp.dev/" target="_blank" class="highlight-line">Firecamp</a></h2>
<p><a href="https://firecamp.dev/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704563849840/bb1a17ff-9ed5-4e6a-99e0-d9bded4b8c37.png" alt=""  />
</a></p>
<p>Firecamp is open source Postman alternative, a API development platform prioritizing developer experience (DX), offering a seamless environment for designing, testing, and documenting APIs. Inspired by VSCode DX, it boasts a user-friendly interface, enabling efficient collaboration within teams. With multi-protocol testing support and the ability to work on API collections collaboratively, Firecamp accelerates API development, allowing users to build APIs faster without toggling between different tools – all while encompassing documentation, CLI, and CI/CD functionalities under one roof.</p>
<h2 id="4-supasnaphttpssupasnapcom">4. <a href="https://supasnap.com/" target="_blank" class="highlight-line">Supasnap</a></h2>
<p><a href="https://supasnap.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704634211493/bcb4b728-7f4d-4375-b36f-0bf0c3261977.png" alt=""  />
</a></p>
<p>Transform your screenshots effortlessly with Supasnap – a user-friendly online tool. Simply drag and drop your image, customize backgrounds, margins, and more. Capture, edit, and enhance your visuals without any downloads. Enjoy privacy as Supasnap operates locally in your browser, ensuring your snaps are only stored when you choose to save them. Elevate your screenshot game instantly with Supasnap&rsquo;s intuitive features and share your creations seamlessly on social media.&quot;</p>
<h2 id="5-aicamphttpsaicampso">5. <a href="https://aicamp.so/" target="_blank" class="highlight-line">AICamp</a></h2>
<p><a href="https://aicamp.so/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704634485432/515abc67-916d-4a7b-aeef-0f5d0781c94d.png" alt=""  />
</a></p>
<p>Discover AICamp, your go-to All-In-One AI Platform for teams of all sizes. Access 10+ Language Models, Assistants, and Tools to boost productivity and collaborate seamlessly. With support for 500+ ready-to-use prompts, AICamp delivers improved results, all at a 10x less pricey tag. Experience AI-powered features, multi-LLM support, collaborative workspaces, and a centralized prompt library for efficient, budget-friendly AI solutions. The intuitive interface ensures easy adoption for all team members, empowering you to win in life with affordable, powerful AI.</p>
<h2 id="6-detachlesshttpsdetachlesscom">6. <a href="https://detachless.com/" target="_blank" class="highlight-line">Detachless</a></h2>
<p><a href="https://detachless.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704634724576/da1e59c7-eb58-46cc-9594-c54b3f606768.png" alt=""  />
</a></p>
<p>Experience seamless web design with Detachless, a Figma integration that lets you publish directly to the web without leaving your design environment. Craft and manage your web designs effortlessly in Figma, eliminating the need for multiple tools. Secure your early access to this innovative solution, ensuring a smooth transition from design to live site with just a click. With Detachless, say goodbye to the hassle of switching platforms and embrace a streamlined, all-in-one design flow within Figma.</p>
<h2 id="7-animstatshttpswwwanimstatscom">7. <a href="https://www.animstats.com/" target="_blank" class="highlight-line">AnimStats</a></h2>
<p><a href="https://www.animstats.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704635360593/a206f6c4-ae83-4502-a60f-4e1bf0512c4c.png" alt=""  />
</a></p>
<p>Boost your online presence with AnimStats! Use cool Animated GIFs and Videos to make your stats pop, grabbing attention and getting 10 times more engagement on your tweets. It&rsquo;s easy—turn boring numbers into eye-catching content in under a minute with our simple interface and powerful tools. Let AnimStats make your data look awesome!</p>
<h2 id="8-uiwidgetshttpswwwuiwidgetsstore">8. <a href="https://www.uiwidgets.store/" target="_blank" class="highlight-line">UIWidgets</a></h2>
<p><a href="https://www.uiwidgets.store/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704636136626/703bde8b-6640-4886-b901-8e9bc9bc5061.png" alt=""  />
</a></p>
<p>Discover the UiWidget Store – your gateway to crafting stunning landing pages effortlessly. With UiWidgets, building high-converting pages is a breeze, thanks to its creative components and pre-built code templates. Simply select components intuitively, export the code to your preferred editor, customize the content, and you&rsquo;re ready to publish and go live seamlessly. Elevate your web presence with UiWidgets&rsquo; user-friendly design experience.</p>
<h2 id="9-1000-toolshttps1000tools">9. <a href="https://1000.tools/" target="_blank" class="highlight-line">1000 Tools</a></h2>
<p><a href="https://1000.tools/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704637388429/49b194c9-06d9-45f8-bcda-59cbb8425331.png" alt=""  />
</a></p>
<p>Explore the ultimate compilation of top-tier tools with &lsquo;1000 Tools&rsquo; – an exclusive list meticulously curated and regularly updated by a team of experts. Each entry undergoes rigorous vetting, ensuring you have access to the very best tools for a diverse range of purposes. Elevate your projects with confidence using this handpicked selection tailored for excellence.</p>
<h2 id="10-tweetaihttpstweetaicom">10. <a href="https://tweetai.com/" target="_blank" class="highlight-line">TweetAI</a></h2>
<p><a href="https://tweetai.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704638209180/129271c0-7eca-4b7a-baf7-7707a3ec6975.png" alt=""  />
</a></p>
<p>TweetAI, the Chrome Extension revolutionizing your Twitter experience! Seamlessly integrated with Twitter/X UI, this tweet generator, established in 2022, crafts one-click replies that sound just like you. Fine-tuned on millions of tweets and powered by cutting-edge AI (GPT-4), it&rsquo;s your shortcut to boosting engagement, growing followers, and generating viral threads. Compatible with TweetDeck/Pro, it&rsquo;s time to captivate your audience with ease!</p>
<h2 id="11-tabler-iconshttpstablericonscom">11. <a href="https://tablericons.com/" target="_blank" class="highlight-line">Tabler Icons</a></h2>
<p><a href="https://tablericons.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704638709304/16a0feb0-ed64-47a4-ac13-46529ab610b9.png" alt=""  />
</a></p>
<p>Tabler Icons offers a collection of 4673 open-source SVG icons, providing users with a versatile and extensive library. These icons are highly customizable, allowing users to adapt them to their specific design needs. With no attribution required, Tabler Icons is an ideal choice for both personal and commercial projects, offering a convenient solution for creative endeavors.</p>
<h2 id="12-syncsignaturehttpssyncsignaturecom">12. <a href="https://syncsignature.com/" target="_blank" class="highlight-line">SyncSignature</a></h2>
<p><a href="https://syncsignature.com" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704638850485/75e493c8-7992-46b8-96e9-6b28ad203caf.png" alt=""  />
</a></p>
<p>SyncSignature transforms your favorite photos into professional headshots and personalized email signatures. Elevate your personal brand with a great headshot in just 30 seconds, attracting more opportunities and connections. Choose from predefined templates to match your style, and effortlessly create branded email signatures for instant professionalism across all devices. Put your best face forward and measure the impact of your unique personal brand assets with SyncSignature.</p>
<h2 id="13-jobboardsearchhttpsjobboardsearchcom">13. <a href="https://jobboardsearch.com/" target="_blank" class="highlight-line">JobBoardSearch</a></h2>
<p><a href="https://jobboardsearch.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704642660583/915410aa-e239-4d44-844b-fe40174bc9ce.png" alt=""  />
</a></p>
<p>Discover your dream job with JobBoardSearch, a carefully curated collection of the world&rsquo;s top job boards. Explore an extensive list of opportunities, including remote jobs, entry-level positions, internships, and more. With popular tags like salary, no degree required, and Web3 companies, finding the perfect job has never been easier. Diversify your job search across 404 curated job boards and land the career you&rsquo;ve been longing for.</p>
<h2 id="14-job-jothttpsjobjotaicom">14. <a href="https://jobjotai.com/" target="_blank" class="highlight-line">Job Jot</a></h2>
<p><a href="https://jobjotai.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704642754926/3e8b7b1e-fbc3-4750-b189-94c3a9ca4670.png" alt=""  />
</a></p>
<p>Job Jot revolutionizes your job search with powerful tools. Outsmart applicant tracking systems (ATS) effortlessly, ensuring each application shines. Customize resumes and cover letters with precision using user-friendly features. Benefit from AI-powered tailoring, personalized cover letters, and advanced application tracking to catch the attention of top employers.</p>
<h2 id="15-pensivehttpspensiveio">15. <a href="https://pensive.io/" target="_blank" class="highlight-line">Pensive</a></h2>
<p><a href="https://pensive.io/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1704642964192/3e04e87d-feac-4436-8a91-d0e216c885a8.png" alt=""  />
</a></p>
<p>Boost your productivity with Pensive, a user-friendly tool for managing your time and tasks. Pensive lets you easily plan your day and stay organized with customizable daily task views. Track habits effortlessly, setting them for daily, weekly, or monthly routines, and build streaks to form new habits. Stay on top of your to-do lists by attaching senses, getting reminders when you need them. With Pensive, take control of your productivity journey in a simple and efficient way.</p>
<p><strong>I hope these tools and websites will help you in your professional work.</strong></p>
<h4 id="if-you--my-content-connect-me-on--twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on  <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>Top 15 Must Try AI Tools for Professionals in 2023</title><link>https://mranand.com/blogs/top-15-must-try-ai-tools-for-professionals-in-2023/</link><pubDate>Sun, 01 Oct 2023 10:56:05 +0530</pubDate><guid>https://mranand.com/blogs/top-15-must-try-ai-tools-for-professionals-in-2023/</guid><description>In this article, we&amp;#39;ll see a few AI-powered tools that are set to revolutionize development and make the lives of professionals easy in 2023. We&amp;#39;ll talk about the top 15 AI and low-code tools designed to empower professionals. AI tools are so much more powerful now that they enable them to create impactful products, manage teams and run their own startups. Discover the cutting-edge capabilities of these AI tools and how they can significantly enhance efficiency and innovation in the development process.</description><content:encoded><![CDATA[<p>In this article, we&rsquo;ll see a few AI-powered tools that are set to revolutionize development and make the lives of professionals easy in 2023. We&rsquo;ll talk about the top 15 AI and low-code tools designed to empower professionals. AI tools are so much more powerful now that they enable them to create impactful products, manage teams and run their own startups. Discover the cutting-edge capabilities of these AI tools and how they can significantly enhance efficiency and innovation in the development process.</p>
<h2 id="1picwishhttpspicwishcom">1. <a href="https://picwish.com/" target="_blank" class="highlight-line">PicWish</a></h2>
<p><a href="https://picwish.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://miro.medium.com/v2/resize:fit:700/1*wV7ukfKBpKSS1XjILO95jw.jpeg" alt=""  />
</a></p>
<p>PicWish is an all-in-one AI photo editor that can efficiently enhance<br>
your pictures within a few clicks. It has a <a href="https://picwish.com/remove-background" target="_blank" class="highlight-line">background remover</a> that can<br>
precisely cut-out the subject out of the picture and make the background<br>
transparent. Boosted by its AI technology, users can do this process<br>
automatically. For sure, people in the eCommerce business will love it<br>
as it can create professional product photos with ease. With this, it<br>
can even generate AI backgrounds after the background removal.</p>
<h2 id="2-bravohttpswwwbravostudioapp">2. <a href="https://www.bravostudio.app/" target="_blank" class="highlight-line">Bravo</a></h2>
<p><a href="https://www.bravostudio.app/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1696095511382/d7d77b23-12f3-4084-9678-5947c39a26e1.png" alt=""  />
</a></p>
<p>Bravo Studio is a tool that connects the design and the backend to build a fully functional app. Unlike other app builders, Bravo leverages the design and data handling of third-party tools, adding flexibility to the process. You can use Figma or Adobe XD to design the UI and any backend with a REST API to store the data. By working directly with the app design, Bravo can ensure the app remains 100% true to design, whilst dramatically decreasing development time and providing sophisticated functionality. You can turn Figma designs into interactive prototypes with native features using Bravo Studio and showcase ideas in action, seamlessly publishing when ready</p>
<h2 id="3-fillouthttpswwwfilloutcomrefmra">3. <a href="https://www.fillout.com?ref=mra" target="_blank" class="highlight-line">Fillout</a></h2>
<p><a href="https://www.fillout.com?ref=mra" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1696096339534/df4b4eba-7446-4e60-a0c3-5c9b1e40971b.png" alt=""  />
</a></p>
<p>Fillout AI is a new tool that allows you to create forms, surveys, and quizzes in minutes. You can make a form from a doc, PDF, or text. The form builder is designed for HubSpot and allows you to collect or update data wherever you need it. You can connect your database or store responses in Fillout, drag and drop questions, and share a link or embed forms anywhere.</p>
<p>Fillout AI offers over 40 highly customizable question types and advanced features like accepting payments secured by Stripe, creating single or multi-page forms, and using beautifully crafted templates. It also provides templates for various types of forms such as RSVP forms, newsletter signups, price quote requests, employee emergency contact forms, and online registration forms.</p>
<h2 id="4-cronhttpscroncom">4. <a href="https://cron.com/" target="_blank" class="highlight-line">Cron</a></h2>
<p><a href="https://cron.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1696096634488/878cb4d2-e6fb-4357-a6c1-e4c9bf1c4e3e.png" alt=""  />
</a></p>
<p>Cron Calendar is the next-generation calendar for professionals and teams. It’s a well-designed calendar app for Mac and Windows that features time zone features, meeting tools, and pleasantly-sounding notifications. Cron is a third-party calendar app that is also available for macOS, iOS, Windows, and the web. It’s an intuitive and well-thought-out app that has features you just don’t see from Google Calendar and other calendar apps. The main Cron window looks like a calendar app with a week view in the centre, a tiny month view in the corner and a list of active calendars on the left.</p>
<p>Cron Calendar is considered better by some users due to its unique features and beautiful design. It automatically syncs with Google Calendar and allows you to add events with one click, saving you the hassle of opening another window.</p>
<h2 id="5-tomehttpstomeapp">5. <a href="https://tome.app/" target="_blank" class="highlight-line">Tome</a></h2>
<p><a href="https://tome.app/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1696097073024/8ceb1839-6b2f-4f31-ab17-ad6ba8cd5573.png" alt=""  />
</a></p>
<p>Tome is an AI-powered storytelling format that allows creators to quickly and easily construct complete stories, presentations, or outlines from scratch. It leverages the power of artificial intelligence to generate compelling presentations. By utilizing the capabilities of ChatGPT and DALL-E 2, it seamlessly combines text and images to create dynamic visual stories. You can type in a prompt and watch Tome generate entire narratives from scratch or create additional content pages within seconds. It comes with intelligent titles, pagination, page layouts, and page text, accompanied by GPT-3 and AI-generated graphics.</p>
<h2 id="6-superhumanhttpssuperhumancom">6. <a href="https://superhuman.com/" target="_blank" class="highlight-line">SuperHuman</a></h2>
<p><a href="https://superhuman.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1696097607649/2768c6dc-b990-4c99-83dc-55f894e95ff9.png" alt=""  />
</a></p>
<p>Superhuman is an AI-powered email tool designed for high-performing teams and individuals, aiming to provide the fastest email experience ever made. It saves teams over 10 million hours every single year by allowing users to fly through their emails twice as fast as before. With Superhuman AI, you can write faster than ever before. Just jot down some phrases, and it will turn them into a full email.</p>
<p>The AI matches the voice and tone in the emails you’ve already sent, applying that to everything it creates. This results in an increase in productivity and a decrease in writer’s block. Superhuman also uses AI to automatically sort incoming messages based on your behavioral patterns, providing options for scheduling and setting reminders for important emails. It’s like having a professional editor just for you.</p>
<h2 id="7-tallyhttpstallysorefmr">7. <a href="https://tally.so?ref=mr" target="_blank" class="highlight-line">Tally</a></h2>
<p><a href="https://tally.so?ref=mr" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1696097985274/e615db22-3c34-4aac-85f9-d4da190cae20.png" alt=""  />
</a></p>
<p>Tally is a free online form builder that works like a text document. It’s the simplest way to create forms and is used by over 120,000+ teams at the world’s best companies. With Tally, you can just start typing on the page and insert blocks, similar to how you would in Notion. It provides unlimited forms, submissions, and everything you need to create professional forms and surveys — all free of charge as long as you stay within their fair usage guidelines.</p>
<h2 id="8-blackbox-aihttpswwwuseblackboxio">8. <a href="https://www.useblackbox.io/" target="_blank" class="highlight-line">Blackbox AI</a></h2>
<p><a href="https://www.useblackbox.io/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1696098660853/af21a178-f1c4-46aa-92f8-39295133a490.png" alt=""  />
</a></p>
<p>Blackbox AI is an AI-powered coding assistant that helps developers code faster and better. It provides real-time code completion, documentation, and debugging suggestions. You can write any command starting with a double slash and hit enter to show suggestions. When it shows any suggestions, just hit the tab to accept and Esc to reject. It’s available in 20+ programming languages including Python, JavaScript, TypeScript, Go, Ruby, and much more. Blackbox AI also has a feature called Code Chat that allows developers to find the best code snippets to use while building products. The AI understands these queries and translates them into executable code. It can also identify potential errors in the user’s code and provide suggestions to correct them.</p>
<h2 id="9-loopinhttpswwwloopinhqcom">9. <a href="https://www.loopinhq.com/" target="_blank" class="highlight-line">Loopin</a></h2>
<p><a href="https://www.loopinhq.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1696099003364/9a0dc80c-0cfe-4fe3-b08d-8e62f6762072.png" alt=""  />
</a></p>
<p>Loopin HQ is an AI Meeting Assistant designed specifically for customer-facing teams. It aims to revolutionize the way meetings are conducted by removing the hassle and providing concise meeting summaries, automated recaps, and a conversational assistant. Loopin uses state-of-the-art AI technology to transcribe meeting recordings and generate meeting minutes. You can focus on the conversation and never worry about making notes.</p>
<p>Loopin AI technology connects related meetings together to resurface important meetings and related notes. You can switch context within seconds and prepare for upcoming meetings with ease. If you want to know something, you can just ask Loopin AI. You can share meeting notes with your team via email, Slack, or Notion automatically.</p>
<h2 id="10-codiumhttpswwwcodiumai">10. <a href="https://www.codium.ai/" target="_blank" class="highlight-line">Codium</a></h2>
<p><a href="https://www.codium.ai/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1696099273581/75f6585d-3029-440d-aff9-13926b0221ac.png" alt=""  />
</a></p>
<p>Codium AI is an AI-powered platform that helps development teams automate code reviews and identify potential issues in their code. It also writes test cases for the code that AI understands. Codium AI plugs into your IDE and suggests meaningful test suites as you code. It does this by exploring and analyzing your code, docstrings, and comments, and dynamically interacting with you. With CodiumAI, you get non-trivial tests (and trivial, too!) suggested right inside your IDE, so you can code smart, create more value, and stay confident when you push.</p>
<p>You get full visibility of how your code behaves and how the changes you make affect the rest of your code. You can spend fewer hours writing questionable test cases and more time developing useful features for your users. Unlike code coverage quotas, meaningful tests actually check your code’s functionality. So you get the confidence needed to commit.</p>
<h2 id="11-folkhttpswwwfolkapp">11. <a href="https://www.folk.app/" target="_blank" class="highlight-line">folk</a></h2>
<p><a href="https://www.folk.app/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1696099555251/3f171362-2e01-40f1-96bf-c1388c53ac43.png" alt=""  />
</a></p>
<p>Folk CRM is an all-in-one CRM tool that helps you manage all your relationships, whether they’re related to sales, recruiting, fundraising, partnerships, or investing. It’s a collaborative workspace for your team’s relationships, and its AI-powered engine helps to personalize every touchpoint, write better, and track and monitor your results.</p>
<p>Folk allows you to sync contacts and interactions from anywhere, collaborate on pipelines with ease, generate emails with AI, personalize them at scale, track and follow up. It also offers analytics &amp; reports to help you make data-backed decisions. Folk is lightweight, customizable, and designed to work for you. It’s trusted by next-gen companies and offers a free plan up to 100 contacts in your personal CRM.</p>
<h2 id="12-writesonichttpswritesoniccom">12. <a href="https://writesonic.com/" target="_blank" class="highlight-line">Writesonic</a></h2>
<p><a href="https://writesonic.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1696100153076/5a35466b-ab57-4ef2-a240-cd6aea1b59d2.png" alt=""  />
</a></p>
<p>Writesonic is an AI-powered content creation and customer experience platform that offers a variety of tools for different needs. It’s built on generative AI models and can create new content by learning from massive datasets. Writesonic’s online writer allows you to expand keywords into different styles of text in just a few minutes. It also comes with text editing, SEO optimization, landing page optimization, and other enhancements.</p>
<p>Writesonic provides a wide range of templates suitable for almost any content creation scenario. It also offers a feature called Chatsonic, which is a generative AI conversation partner powered by GPT-4 and designed to tackle ChatGPT’s limits. With Chatsonic’s Google Search integration, you can engage in real-time conversations on current events and trending topics effortlessly. Additionally, Writesonic offers Botsonic, a no-code AI chatbot builder that allows you to train ChatGPT on your own data and build smarter AI chatbots for your website.</p>
<h2 id="13-flair-aihttpsflairai">13. <a href="https://flair.ai/" target="_blank" class="highlight-line">Flair AI</a></h2>
<p><a href="https://flair.ai/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1696100706341/8336c275-4a28-4089-99f5-92d6c20c2088.png" alt=""  />
</a></p>
<p>Flair AI is an AI-powered design tool specifically for product photography. It allows you to create stunning photoshoots in seconds by simply dragging and dropping images, props, and 3D assets. You can adjust the lighting and camera angle to compose the perfect scene. Flair AI also offers a new feature for fashion photoshoots where you can fit your cloth onto AI-generated models, creating high-quality on-model imagery at scale. It provides all the familiar tools you need to iterate on designs fast and build and share designs together with real-time collaboration. Moreover, you can leverage their API to create unique designs for your customers. It’s a highly useful tool when generating logos, product representations, and branded content in general.</p>
<h2 id="14-sudowritehttpswwwsudowritecom">14. <a href="https://www.sudowrite.com/" target="_blank" class="highlight-line">Sudowrite</a></h2>
<p><a href="https://www.sudowrite.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1696100510644/eda6721d-6da1-43f4-b5c8-9702ad16915a.png" alt=""  />
</a></p>
<p>Sudowrite is an AI-powered creative writing tool that helps you write your novel or screenplay faster and more efficiently. It provides various “story tools” such as character development, world-building, and plot creation. Sudowrite is designed to help users overcome writer’s block, generate ideas, and enhance their writing. It can be deployed to generate new content, expand on existing content, or rewrite content to meet set criteria. The software can be used by novelists, screenwriters, and others with creative writing needs. Sudowrite is based on GPT-3 and GPT-4, 175+ billion parameter Transformer models, which learn general concepts from their training data. The model generates text by guessing what’s most likely to come next, one word at a time.</p>
<h2 id="15-vondyhttpsvondycomviamr">15. <a href="https://vondy.com/?via=mr" target="_blank" class="highlight-line">Vondy</a></h2>
<p><a href="https://www.vondy.com/?via=mr" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1696101026604/14ac2016-bad9-48db-b7b7-7ac278070412.png" alt=""  />
</a></p>
<p>Vondy AI is a next-generation AI platform that provides a variety of AI-powered apps to help enhance your productivity. It offers an extensive library of apps, characters, and prompts to help you create and explore. You can use Vondy to create your own apps, explore image generation tools, meet a collection of chatbots with unique personalities, and even find conversation starters. Vondy also offers a range of productivity apps, writing tools, and essential AI apps to get you started. It’s designed for teams of all sizes and technical backgrounds, allowing you to do more with less by creating, using, and sharing AI-powered tools tailored to your specific work needs.</p>
<h2 id="16-webwavehttpswebwavemeai-website-builder">16. <a href="https://webwave.me/ai-website-builder" target="_blank" class="highlight-line">WebWave</a></h2>
<p><a href="https://webwave.me/ref/12566526982" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1696095599682/73043c9c-d14e-4c39-a6f9-7856ba8ee46b.png" alt=""  />
</a></p>
<p>WebWave AI Website Builder is an innovative tool that allows you to generate a website with just one click. With a single click on the “Generate” button, the advanced algorithm creates a website tailored to your description. The AI generates the layout, images, colour palette, and fonts that best suit your description. However, you can tweak everything later with the drag-and-drop editor. The WebWave AI writer fills your page with copy that reflects your brand’s character. The SEO optimization feature ensures that your copy not only appeals to visitors but also to algorithms, leading to more traffic and clients. This platform is designed to be user-friendly and flexible, allowing you to create a website without needing any coding skills.</p>
<p><strong>I hope these tools and websites will help you in your professional work.</strong></p>
<h4 id="if-you--my-content-connect-me-on--twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on  <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>Top 20 Must Try AI Tools for Developers in 2023</title><link>https://mranand.com/blogs/top-20-must-try-ai-tools-for-developers-in-2023/</link><pubDate>Thu, 20 Jul 2023 10:56:05 +0530</pubDate><guid>https://mranand.com/blogs/top-20-must-try-ai-tools-for-developers-in-2023/</guid><description>In this article, We&amp;#39;ll talk about the top 20 AI and low-code tools designed to empower developers. AI tools are so much more powerful now that it enables them to create impactful products, manage teams and run their own startups. Discover the cutting-edge capabilities of these AI tools and how they can significantly enhance efficiency and innovation in the development process.</description><content:encoded><![CDATA[<p>In this article, we&rsquo;ll see a few AI-powered tools that are set to revolutionize development and make the life of developers easy in 2023. We&rsquo;ll talk about the top 20 AI and low-code tools designed to empower developers. AI tools are so much more powerful now that it enables them to create impactful products, manage teams and run their own startups. Discover the cutting-edge capabilities of these AI tools and how they can significantly enhance efficiency and innovation in the development process.</p>
<h2 id="1-tldvhttpstldvcellosoaxf1wsxl27m">1. <a href="https://tldv.cello.so/AXf1WSXl27m" target="_blank" class="highlight-line">tl;dv</a></h2>
<p><a href="https://tldv.cello.so/AXf1WSXl27m" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1689492544546/f0dfc23d-b39a-44e4-b6c1-515488602cea.png" alt="tl;dv"  />
</a></p>
<p>Introducing <strong>tl;dv</strong>, an AI-powered tool for call and meeting management. With AI timestamps, you can effortlessly highlight key moments and automatically generate summaries. Get instant access to recordings, timestamps, and transcripts right after your calls. Quickly find important moments, create clips, and utilize AI search for comprehensive insights across your meeting library.</p>
<p>Whether it&rsquo;s UX research, product management, or customer success, This tool empowers you to enhance productivity, drive user-centric change, and streamline collaboration. Experience the transformative power of AI in optimizing your call workflows today.</p>
<h2 id="2-pieces-for-developershttpspiecesapp">2. <a href="https://pieces.app/" target="_blank" class="highlight-line">Pieces for Developers</a></h2>
<p><a href="https://pieces.app/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1689632069086/84a29d20-d1df-4af4-bc1e-5075382bb334.png" alt="Pieces"  />
</a></p>
<p>Pieces for Developers is an intelligent code snippet manager deeply integrated with AI to help you save, generate, enrich, reuse and share code throughout your workflow. The desktop application and suite of integrations with existing developer tools boost your productivity while researching in the browser, collaborating with teammates, and coding in the IDE.</p>
<p>You can generate contextualized code based on your personal repository, extract code from screenshots, automatically add inline comments to your code, and much more - all within a powerful, centralized application that streamlines your workflow. Code more efficiently with their free tools!</p>
<h2 id="3-youhttpsyoucom">3. <a href="https://you.com/" target="_blank" class="highlight-line">YOU</a></h2>
<p><a href="https://you.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1689493808498/b8a82560-f03d-4266-8720-f5d0ccfca39f.png" alt="YOU"  />
</a></p>
<p>You.com is a search engine built on artificial intelligence that provides users with a customized search experience while keeping their data 100% private. It&rsquo;s a proper app suite with lots of AI-based tools and features. With <strong>YOUwrite</strong>, you can use AI to write blogs, emails or social media posts. With <strong>YOUimagine,</strong> find and create stunning images using AI.</p>
<p>You can write code and take help in your development process by accessing code mode AI chat to search the web. And study or learn new skills by using study mode chat to access resources across the web. Explore YOU now.</p>
<h2 id="4-jamhttpsjamdev">4. <a href="https://jam.dev/" target="_blank" class="highlight-line">Jam</a></h2>
<p><a href="https://jam.dev/jamgpt" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1689580788138/6f5f6e55-73ca-41d4-b868-4209469ecaa8.png" alt="Jam"  />
</a></p>
<p>Jam.dev is a user-friendly tool trusted by thousands of teams. It enables quick bug reporting without disrupting workflow, generating comprehensive bug reports that include essential information like browser/OS details, console logs, user actions, network logs, and linked services. It seamlessly integrates with popular issue trackers and tools, enhancing bug reporting in any preferred platform.</p>
<p>Additionally, JamGPT, an AI debugging assistant included with Jam, analyzes bug reports, identifies correlations, and provides solutions, allowing for faster debugging powered by AI. JamGPT is available as a free extension for Jam users and as an instant ChatGPT app exclusively for macOS, accessible via a convenient keyboard shortcut.</p>
<h2 id="5-decktopus-aihttpswwwdecktopuscomviamr">5. <a href="https://www.decktopus.com/?via=mr" target="_blank" class="highlight-line">Decktopus AI</a></h2>
<p><a href="https://www.decktopus.com/?via=mr" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1689667688946/f8bbb738-5665-48f9-a2a3-3e8a04ea8097.png" alt="Decktopus"  />
</a></p>
<p>Decktopus is an invaluable tool for developers and product managers, enabling them to create impressive presentations effortlessly and without design expertise. By saving time and effort, it allows them to concentrate on essential tasks. For developers, Decktopus generates visually appealing presentations for project updates, technical documentation, and product demos, effectively conveying information to diverse audiences.</p>
<p>Product managers can utilize its features to craft engaging presentations for product roadmaps, market research, and customer feedback, utilizing customizable themes, layouts, and design options. Decktopus offers built-in tools such as forms, voice recording, custom domain integration, webhook functionality, and multimedia embedding, enhancing the overall presentation experience.</p>
<h2 id="6-durablehttpsdurableco">6. <a href="https://durable.co/" target="_blank" class="highlight-line">Durable</a></h2>
<p><a href="https://durable.co/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1689876016105/a69c77ac-d9cf-46fa-8634-1b9a2a7fa377.png" alt=""  />
</a></p>
<p>Durable can help you build a website in 30 seconds with AI. This AI website builder generates an entire website with images and copies in seconds. If you are a small business owner without coding knowledge, this is a go-to tool for you. You can edit the website with a simple editor or generate a new website design just by writing AI prompts. You can get a website, CRM, analytics and add invoicing without any hectic process.</p>
<p>If you are a developer, you can launch a project page in seconds using Durable. Code less build more!</p>
<h2 id="7-leap-aihttpstryleapairefastro">7. <a href="https://tryleap.ai/?ref=astro" target="_blank" class="highlight-line">Leap AI</a></h2>
<p><a href="https://tryleap.ai/?ref=astro" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1689494296260/39dc28bd-2325-4e2e-8f2a-c9088f46be15.png" alt="Leap AI"  />
</a></p>
<p>Leap AI provides AI APIs for developers. Covers a wide range of AI tasks, including image recognition, text analysis, and natural language processing. Leap AI&rsquo;s APIs offer user-friendly features, making them accessible even for developers without AI experience. These APIs are scalable, allowing you to adjust the number of requests as per your needs. With reliable performance, you can trust that Leap AI&rsquo;s APIs will be available when required.</p>
<p>If you seek a provider with diverse services, easy-to-use APIs, and scalability, Leap AI is an excellent choice. Integrate with over 5,000+ apps without writing any code.</p>
<h2 id="8-notion-aihttpswwwnotionsoproductai">8. <a href="https://www.notion.so/product/ai" target="_blank" class="highlight-line">Notion AI</a></h2>
<p><a href="https://www.notion.so/product/ai" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1689497217522/91ff9f27-fb1a-48e0-a949-23ff97116449.png" alt="Notion"  />
</a></p>
<p>Notion AI is a helpful tool inside the Notion workspace, assisting with writing, brainstorming, editing, and summarizing. It boosts writing efficiency and speed, suitable for various content types like blogs, job descriptions, and emails. The &lsquo;Notion AI automates content creation, including blogs, brainstorming, to-do lists, and literature, using powerful artificial intelligence. Unlike other tools, Notion&rsquo;s drag-and-drop text editor allows easy rearrangement and transformation of AI-generated content.</p>
<h2 id="9-microsoft-designerhttpsdesignermicrosoftcom">9. <a href="https://designer.microsoft.com/" target="_blank" class="highlight-line">Microsoft Designer</a></h2>
<p><a href="https://designer.microsoft.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1689497731903/5b68ec42-776c-4f51-ab56-bacda597d575.png" alt="MS"  />
</a></p>
<p>Microsoft Designer is a versatile tool for crafting signs, invitations, logos, social media posts, and website banners. With its AI capabilities, you can effortlessly begin designing using your own images or AI-generated options. It supports you throughout the creative journey, from ideation to actualization. Equipped with AI superpowers, it can generate striking designs and images based on your input, while providing writing assistance and automatic layout suggestions.</p>
<p>It can help you in the promotion of your software and apps by using visual design generated using AI.</p>
<h2 id="10-microsoft-clipchamphttpsclipchampcomen">10. <a href="https://clipchamp.com/en/" target="_blank" class="highlight-line">Microsoft Clipchamp</a></h2>
<p><a href="https://clipchamp.com/en/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1689499024984/983ef9ca-0890-40b8-95c5-213a4b6b246a.png" alt="MS"  />
</a></p>
<p>Clipchamp is an online video editor that enables everyone to craft captivating stories through video. Clipchamp is the go-to platform for effortlessly editing videos for various purposes. Whether starting from scratch or using a template for efficiency, its extensive collection caters to all project types. Importing videos from multiple sources, including computers and mobile phones, is a breeze.</p>
<p>Microsoft is using AI like crazy, this video editor is super easy to use to edit presentations, video tutorials or project introductions. Automatically create accurate captions in over 140 languages. Turn text into speech with one click.</p>
<h2 id="11-superagihttpssuperagicom">11. <a href="https://superagi.com/" target="_blank" class="highlight-line">SuperAGI</a></h2>
<p><a href="https://superagi.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1689533754815/091e8836-798a-4608-a49b-45c6ddc964cd.png" alt="SuperAGI"  />
</a></p>
<p>SuperAGI is a user-friendly open-source platform for building and launching autonomous agents for different purposes. With its graphical interface, action console, concurrent agents, and various database options, developers can easily create and manage AI agents. SuperAGI is a developer-focused framework for autonomous AI agents, designed to simplify the development process.</p>
<p>It recently introduced SuperCoder, a SuperAGI agent template to create simple software applications using goals &amp; instructions.</p>
<h2 id="12-replicatehttpsreplicatecom">12. <a href="https://replicate.com/" target="_blank" class="highlight-line">replicate</a></h2>
<p><a href="https://replicate.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1689583036583/666a137e-da14-4dcf-b382-b9262cf4ac3b.png" alt="replicate"  />
</a></p>
<p>Replicate is a cloud-based platform that simplifies machine learning for developers. It offers a scalable API to run open-source models without requiring extensive knowledge of machine learning. Developers can access Replicate&rsquo;s Python library or directly query the API using their preferred tools. The platform hosts a diverse community of machine learning experts who share various models, from language processing to video creation.</p>
<p>With Replicate and tools like Next.js and Vercel, developers can swiftly bring their ideas to life and gain visibility on platforms like Hacker News. Replicate also streamlines model deployment with Cog, an open-source tool that packages models into production-ready containers. Overall, Replicate enables easy and efficient integration of machine learning into projects.</p>
<h2 id="13-hugging-facehttpshuggingfaceco">13. <a href="https://huggingface.co/" target="_blank" class="highlight-line">Hugging Face</a></h2>
<p><a href="https://huggingface.co/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1689583354484/1ca9b760-f1b0-4a2c-9e57-a0e3471f24f1.png" alt="Hugging face"  />
</a></p>
<p>Hugging Face is an AI community shaping the future, enabling you to build, train, and deploy cutting-edge models using open-source machine learning. With over 5,000 organizations involved, Hugging Face provides a collaborative hub where creators tackle challenges in Audio, Vision, and Language with AI. Their natural language processing library, Transformers, is open-source and now supports various ML models like Flair, Asteroid, ESPnet, and Pyannote, with more on the way.</p>
<p>Additionally, Hugging Face offers an Inference API for seamless model deployment and the development of innovative technologies, including T0 Multitask Prompted Training, DistilBERT, HMTL, and Dynamical Language Models for enhanced language modeling.</p>
<h2 id="14-pineconehttpswwwpineconeio">14. <a href="https://www.pinecone.io/" target="_blank" class="highlight-line">Pinecone</a></h2>
<p><a href="https://www.pinecone.io/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1689583592272/6084bde6-75f8-4e46-8340-540bf9bfd943.png" alt="Pinecone"  />
</a></p>
<p>Pinecone simplifies the development of high-performance vector search apps, offering scalability and ease of use. It empowers AI application builders with reduced overhead and ultra-low latencies, enabling a seamless transition from research to production without DevOps. With Pinecone, you can effortlessly launch, utilize, and scale your AI solution without the need for infrastructure maintenance or algorithm troubleshooting.</p>
<h2 id="15-midjourneyhttpswwwmidjourneycomhome">15. <a href="https://www.midjourney.com/home/" target="_blank" class="highlight-line">Midjourney</a></h2>
<p><a href="https://www.midjourney.com/home/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1689588456524/c1614b7b-046d-45df-b944-7bcfcf4a48d7.png" alt="Midjourney"  />
</a></p>
<p>Midjourney is an AI-powered program that generates stunning images using advanced algorithms and state-of-the-art technology. It serves as a valuable tool for developers, enabling them to create visually appealing images for various projects, such as websites, apps, and games. Moreover, developers can leverage Midjourney to explore AI and machine learning techniques, integrating them into their own projects. By incorporating Midjourney, developers can enhance the visual appeal of their work and experiment with cutting-edge AI techniques, making it a powerful tool for their creative endeavours.</p>
<h2 id="16-assemblyaihttpswwwassemblyaicom">16. <a href="https://www.assemblyai.com/" target="_blank" class="highlight-line">AssemblyAI</a></h2>
<p><a href="https://www.assemblyai.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1689588866426/5023d938-d984-49b1-8980-4f690cabf57c.png" alt="AssemblyAI"  />
</a></p>
<p>AssemblyAI is a leading platform that offers AI models for speech transcription and comprehension. Their user-friendly API provides access to advanced AI models that can recognize speakers, summarize speeches, and more. Leveraging cutting-edge AI research, AssemblyAI delivers reliable and scalable models through a secure API, trusted by numerous startups and enterprises worldwide. With comprehensive resources, including tutorials and documentation, developers can easily integrate AssemblyAI&rsquo;s API to create innovative products incorporating speech recognition and understanding. By utilizing AssemblyAI&rsquo;s state-of-the-art AI models, developers gain a powerful tool for accurately transcribing and comprehending speech data in their projects.</p>
<h2 id="17-chatpdfhttpswwwchatpdfcom">17. <a href="https://www.chatpdf.com/" target="_blank" class="highlight-line">ChatPDF</a></h2>
<p><a href="https://www.chatpdf.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1689590014693/c7fdda50-7c9f-45f7-9b4c-1d2bb88decb6.png" alt="ChatPDF"  />
</a></p>
<p>ChatPDF is an AI platform that extracts information from PDFs, enabling users to chat with PDF files as if they were talking to a human. It is similar to ChatGPT, but specifically designed for research papers. To use ChatPDF, visit their website and upload a pdf. It offers a chat interface exclusively for interacting with PDFs in real time. This tool allows users to efficiently complete tasks and extract information from large PDF files. It accepts PDFs in any language and can chat in any language.</p>
<h2 id="18-agentgpthttpsagentgptreworkdai">18. <a href="https://agentgpt.reworkd.ai/" target="_blank" class="highlight-line">AgentGPT</a></h2>
<p><a href="https://agentgpt.reworkd.ai/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1689591123085/4df55277-7362-4e3c-8663-9dbc87f6228c.png" alt="AgentGPT"  />
</a></p>
<p>AgentGPT is a platform that enables users to create and deploy their own autonomous AI agents online. Users can give their agents a name and objective, and the agents will work towards achieving the assigned goal. Through a chain of language models, the agents think, execute tasks, evaluate their performance, and generate new tasks, recursively advancing towards their objective. With AgentGPT, developers have a powerful tool for creating personalized AI agents capable of accomplishing diverse goals.</p>
<h2 id="19-langchainhttpslangchain-langchainvercelappdocsget_startedintroductionhtml">19. <a href="https://langchain-langchain.vercel.app/docs/get_started/introduction.html" target="_blank" class="highlight-line">LangChain</a></h2>
<p><a href="https://langchain-langchain.vercel.app/docs/get_started/introduction.html" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1689591738668/77b030c1-8d63-4d87-9dd5-1c3a28d4ccc0.png" alt="LangChain"  />
</a></p>
<p>LangChain is a framework that simplifies application development using large language models. It offers modular abstractions and implementations for various components, making it easy to work with language models. Additionally, LangChain provides customizable use-case-specific chains, enabling developers to quickly start and customize applications for specific purposes like document analysis, chatbots, and code analysis. Overall, LangChain empowers developers to leverage language models effectively and build innovative applications.</p>
<h2 id="20-gretelaihttpsgretelai">20. <a href="https://gretel.ai" target="_blank" class="highlight-line">Gretel.ai</a></h2>
<p><a href="https://gretel.ai" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1689592373298/9306e54d-cc0e-406f-a3b5-8a1877c1568c.png" alt="Gretel"  />
</a></p>
<p>Gretel ai is a synthetic data platform that enables developers to create artificial datasets resembling real data, ensuring privacy is maintained. With Gretel.ai&rsquo;s APIs, developers can easily generate anonymized and secure synthetic data, accelerating innovation while protecting sensitive information. The platform offers comprehensive tools for training AI models, validating use cases, and generating data as required, with a quick setup time. Developers can explore synthetic data through sample notebooks or the user-friendly web app, catering to both technical and non-technical users. Gretel ai empowers developers to harness the potential of synthetic data while upholding privacy standards.</p>
<p><strong>Few more tools&hellip;</strong></p>
<h2 id="21-merlinhttpsappgetmerlininplansrefnjjmztya">21. <a href="https://app.getmerlin.in/plans?ref=njjmztya" target="_blank" class="highlight-line">Merlin</a></h2>
<p><a href="https://app.getmerlin.in/plans?ref=njjmztya" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1690189472516/0ad35f9e-08ee-4d50-9a06-5b2295955287.png" alt=""  />
</a></p>
<p>Merlin is a Chrome extension powered by ChatGPT API that enhances your productivity by providing applications of ChatGPT on any website on your browser. It provides you with features like free access to the GPT-4 model by OpenAI, Youtube Summary, Blog Summary, AI writer for Gmail, Twitter &amp; LinkedIn, Chat GPT response on Google search, AI Chatbot to Chat with Merlin on any website and much more. It helps you get the best out of AI on Google Search, Youtube, Gmail, LinkedIn, Substack and 10+ million other websites.</p>
<h2 id="22-codewphttpscodewpai">22. <a href="https://codewp.ai/" target="_blank" class="highlight-line">CodeWP</a></h2>
<p><a href="https://codewp.ai/" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1689835584488/e1763aef-d00a-49d9-8b98-55134c81e37d.png" alt="CodeWP"  />
</a></p>
<p>CodeWP is a cutting-edge AI code generator and assistant built for WordPress. With its powerful features and user-friendly interface, it simplifies code creation, testing, and installation. It offers a vast library of verified snippets and tutorials to enhance your skills, making it a valuable tool for all aspects of WordPress development. Just ask the generator, and it will provide custom solutions tailored to your needs.</p>
<p><strong>I hope these AI-based tools and websites will help you as a developer to grow more.</strong></p>
<h4 id="if-you--my-content-connect-me-on--twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on  <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>Key Learnings from DevRel University Journey</title><link>https://mranand.com/blogs/key-learnings-from-devrel-university-journey/</link><pubDate>Wed, 19 Jul 2023 10:56:05 +0530</pubDate><guid>https://mranand.com/blogs/key-learnings-from-devrel-university-journey/</guid><description>Embarking on an extraordinary journey at DevRel University has given me profound knowledge and invaluable insights. Guided by industry experts, each session has illuminated the world of Developer Relations (DevRel). In this blog, I&amp;#39;ll share the transformative learnings from each session, capturing the essence of my DevRel University experience.</description><content:encoded><![CDATA[<h2 id="introduction">Introduction</h2>
<p>Embarking on an extraordinary journey at DevRel University has given me profound knowledge and invaluable insights. Guided by industry experts, each session has illuminated the world of Developer Relations (DevRel). In this blog, I&rsquo;ll share the transformative learnings from each session, capturing the essence of my DevRel University experience.</p>
<h2 id="1st-session-developer-relations-101---building-a-devrel-program-from-scratch">1st Session: Developer Relations 101 - Building a DevRel Program from Scratch</h2>
<p>Under Bianca Buzea&rsquo;s guidance, I learned how to create a DevRel program from the beginning. We explored the importance of resources and building strong relationships with developers.</p>
<p><strong>Key Learning:</strong> Building a DevRel program requires resources and strong connections with developers.</p>
<h2 id="2nd-session-developer-relations-and-content-creation">2nd Session: Developer Relations and Content Creation</h2>
<p>Francesco Ciulla explained the connection between DevRel and content creation. I discovered how creating engaging content helps establish oneself in DevRel and opens job opportunities.</p>
<p><strong>Key Learning:</strong> Content creation is essential in DevRel to make an impact and share knowledge.</p>
<h2 id="3rd-session-building-your-first-demo-project">3rd Session: Building Your First Demo Project</h2>
<p>With Benjamin Memisevic, I learned to develop simple demos that showcase a product&rsquo;s potential. These projects engage developers and strengthen relationships.</p>
<p><strong>Key Learning:</strong> Compelling demos demonstrate a product&rsquo;s value and engage developers.</p>
<h2 id="5th-session-how-to-land-your-first-devrel-role">5th Session: How to Land Your First DevRel Role</h2>
<p>Hassan El Mghari shared insights on securing the first DevRel role. Personal branding and establishing an online presence are crucial for career opportunities.</p>
<p><strong>Key Learning:</strong> Personal branding is key to landing the first DevRel role.</p>
<h2 id="6th-session-events-meetups-hackathons-and-conferences">6th Session: Events: Meetups, Hackathons, and Conferences</h2>
<p>Facundo Giuliani taught me how to organize and participate in events like meetups, hackathons, and conferences. This helps establish authority and forge connections.</p>
<p><strong>Key Learning:</strong> Participating in events helps build authority and meaningful connections.</p>
<h2 id="7th-session-building-devrel-strategy---now-what-do-you-do">7th Session: Building DevRel Strategy - Now What Do You Do?</h2>
<p>Corey Weathers explored DevRel strategy and how to assess effectiveness. Crafting impactful strategies and being adaptable are key to community growth and engagement.</p>
<p><strong>Key Learning:</strong> Effective DevRel strategies drive community growth and require adaptability.</p>
<h2 id="conclusion">Conclusion</h2>
<p>My journey at <a href="https://www.devreluni.com/" target="_blank" class="highlight-line">DevRel University</a> has exceeded expectations, providing transformative knowledge. From building DevRel programs, creating content, and developing demos to landing roles, organizing events, and crafting strategies, each session revealed invaluable insights. These learnings shaped my understanding of Developer Relations, empowering me to forge connections, inspire innovation, and foster vibrant developer communities. I look forward to the path ahead.</p>
<h4 id="if-you--my-content-connect-me-on--twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on  <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>How Developers, CTOs, and Product Managers Are Building Internal Operational Apps in 2023</title><link>https://mranand.com/blogs/how-developers-ctos-and-product-managers-are-building-internal-operational-apps-in-2023/</link><pubDate>Thu, 13 Jul 2023 10:56:05 +0530</pubDate><guid>https://mranand.com/blogs/how-developers-ctos-and-product-managers-are-building-internal-operational-apps-in-2023/</guid><description>As a developer, let me break it down for you in casual language. Internal apps are like secret weapons for businesses. They&amp;#39;re custom-made applications built specifically for internal use, helping teams work smarter and faster. These apps tackle everyday challenges like managing projects, tracking inventory, or streamlining processes. They&amp;#39;re like your personal sidekick, making your work life easier and more efficient.</description><content:encoded><![CDATA[<p>As a developer, let me break it down for you in casual language. Internal apps are like secret weapons for businesses. They&rsquo;re custom-made applications built specifically for internal use, helping teams work smarter and faster. These apps tackle everyday challenges like managing projects, tracking inventory, or streamlining processes. They&rsquo;re like your personal sidekick, making your work life easier and more efficient. </p>
<p>One prominent use case of internal app development is s creating a unified dashboard for sales teams that consolidates data from multiple sources. Sales teams can benefit from this unified dashboard by having a comprehensive view of their sales pipeline, customer interactions, and performance metrics in one place. They can track leads, monitor opportunities, view customer profiles, and access historical data without the need to switch between different applications or interfaces. </p>
<p><img loading="lazy" src="https://lh4.googleusercontent.com/a-s-88P7FDstgaCqhQ-QrdBuGynunQhPla6kdSDX7_Ljjv98uX5-ucMLpFqEylO-wQaKncdjyqFJeUKElR5ATj0lite20O8sbVd8MTXlocQ9hZZfLeDxg1Lw-DxsYqp63fEoPNsce8vtTFAYjJFpog" alt=""  />
</p>
<h2 id="making-the-right-call-on-building-internal-apps">Making the right call on building internal apps</h2>
<p>Deciding when to build internal operational apps requires careful consideration of various factors. Here&rsquo;s a decision matrix that can help guide the decision-making process:</p>
<p><img loading="lazy" src="https://lh5.googleusercontent.com/V1frOl2OlFzytdfocr5MDoDJvrKQgVVGkeImj23JZZV8Pb9Mdr9xfSALzptoIEyeUirQIfhQBW0fbzHaihjuAGfnrW7ksbdDsGuwrxo203utupaEpRNBBCDe5q14z5PiSz7bgGMqpVWCWvQlEqZ5Rg" alt=""  />
</p>
<ul>
<li>
<p><strong>Customizability:</strong> Off-the-shelf solutions may fall short of meeting unique business requirements. Building an internal app allows for customization, tailored to specific needs.</p>
</li>
<li>
<p><strong>Integration Challenges:</strong> Existing systems and tools may require seamless integration. Developing an internal app provides the flexibility to integrate with various APIs and databases.</p>
</li>
<li>
<p><strong>Data Security:</strong> Privacy and data protection are paramount. By building internal apps, businesses can implement robust security measures and ensure compliance with industry standards.</p>
</li>
<li>
<p><strong>Scalability:</strong> As businesses grow, scalability becomes crucial. Internal apps built in-house allow for scalability, accommodating increasing demands and user bases.</p>
</li>
<li>
<p><strong>Cost-Effectiveness:</strong> While building internal apps incurs development costs, it can provide long-term cost savings compared to licensing fees for commercial software.</p>
</li>
</ul>
<h2 id="internal-operational-app-checklist">Internal operational app checklist</h2>
<p><strong>User-Friendly UI/UX:</strong></p>
<p>Craft a seamless user experience with intuitive design, easy navigation, and visually appealing interfaces to enhance user engagement.</p>
<p><strong>Backend Integration:</strong> </p>
<p>Integrate your internal app with existing systems and databases to ensure smooth data flow and real-time updates.</p>
<p><strong>Frontend UI Components:</strong></p>
<p>Utilize reusable UI components and libraries to accelerate development and maintain consistency throughout the app.</p>
<p><strong>Authorization and Authentication:</strong> </p>
<p>Implement robust security measures by incorporating authorization and authentication protocols to protect sensitive data and ensure access control.</p>
<p><strong>Role-Based Access:</strong> </p>
<p>Define user roles and permissions to ensure appropriate data access based on the user&rsquo;s role within the organization.</p>
<p><strong>SAML and SSO Integration:</strong></p>
<p>Integrate SAML (Security Assertion Markup Language) for secure Single Sign-On (SSO), enabling seamless authentication across different systems.</p>
<p><strong>Integration with Identity Providers:</strong> </p>
<p>Implement integrations with identity providers like Okta to enhance authentication, and user management, and ensure a centralized login experience.</p>
<p><strong>Scalability and Performance:</strong></p>
<p>Design the app with scalability in mind, ensuring it can handle growing user bases and maintain optimal performance even under high loads.</p>
<p><strong>AI Assistance:</strong> </p>
<p>Leverage AI technologies to assist in building internal apps, such as natural language processing for chatbots, machine learning for data analysis, or automated code generation for faster development cycles.</p>
<p><strong>Analytics and Monitoring:</strong></p>
<p>Incorporate analytics tools and monitoring systems to gather valuable insights on app usage, performance, and user behavior, allowing for continuous improvements.</p>
<p><strong>Cross-Device Compatibility:</strong> </p>
<p>Develop the app to be responsive and compatible across various devices and screen sizes, ensuring a consistent experience for users.</p>
<p><strong>Documentation and Support:</strong> </p>
<p>Provide thorough documentation and ongoing support to assist users in understanding app features and resolving any issues they may encounter.</p>
<h2 id="how-to-start-building-internal-apps">How to start building internal apps </h2>
<p><strong>1. Get App Objective Clear</strong></p>
<ul>
<li>
<p>Clearly define the problem your internal app will solve and the goals it aims to achieve.</p>
</li>
<li>
<p>Understand the purpose of your app to guide the development process and ensure alignment with your organization&rsquo;s needs.</p>
</li>
</ul>
<p><strong>2. Decide the Technology</strong></p>
<p>Choose the Right Development Approach: Select the appropriate development approach based on your resources, skills, and timeline. You can choose between building the app in-house using internal development teams, outsourcing the development to external agencies, or using low-code or no-code platforms for faster development.</p>
<p>In recent years, low-code development has emerged as a go-to solution for building internal apps. With low-code platforms like <a href="https://www.dronahq.com/?utm_source=medium&amp;utm_medium=pdsocial&amp;utm_campaign=amitesh" target="_blank" class="highlight-line">DronaHQ</a>, developers can leverage a visual development approach, enabling them to create powerful internal tools on existing data sources with minimal coding. Low code empowers businesses to accelerate development cycles, enhance collaboration between business and IT teams, and streamline the app creation process.</p>
<p><strong>3. Build the App</strong></p>
<p>While traditionally coding apps from scratch was the norm, developers are now leveraging the power of low-code tools. With low code, developers can accelerate development cycles, simplify workflows, and achieve faster time-to-market. It&rsquo;s easy to build apps with drag-and-drop interfaces, pre-built components, and seamless integrations, empowering developers to bring their app ideas to life with speed and efficiency.</p>
<p><strong>4. Test and Refine</strong></p>
<ul>
<li>
<p>Thoroughly test your internal app to identify and resolve any issues or bugs.</p>
</li>
<li>
<p>Conduct functional testing, user acceptance testing, and performance testing to ensure high-quality standards.</p>
</li>
<li>
<p>Gather feedback from users and stakeholders to refine and enhance the app&rsquo;s functionality.</p>
</li>
</ul>
<p><strong>5. Launch and Monitor</strong></p>
<ul>
<li>
<p>Deploy your internal app to a production environment.</p>
</li>
<li>
<p>Monitor its performance and ensure it delivers the intended value to users.</p>
</li>
<li>
<p>Collect user feedback regularly and iterate on the app to align it with evolving requirements and user needs.</p>
</li>
</ul>
<h2 id="putting-them-all-together-and-choosing-the-right-tech-for-building-internal-apps">Putting them all together and choosing the right tech for building internal apps</h2>
<p>In a nutshell, building internal apps is a journey that requires careful planning, the right technology, and a focus on user needs. Throughout this blog, we&rsquo;ve explored the ins and outs of internal app development, from understanding the objectives to choosing the best technology. </p>
<p>And in this process, we discovered the game-changing power of low-code development.</p>
<p>One standout solution in the low-code arena is <a href="https://www.dronahq.com/signup/?utm_source=medium&amp;utm_medium=pdsocial&amp;utm_campaign=amitesh" target="_blank" class="highlight-line">DronaHQ</a>. With its intuitive drag-and-drop interface, pre-built components, and seamless integrations, DronaHQ makes building internal apps a breeze. Whether you&rsquo;re a developer, CTO, or product manager, DronaHQ provides the tools you need to create customized, user-friendly apps that drive efficiency and streamline processes within your organization.</p>
<p><img loading="lazy" src="https://lh5.googleusercontent.com/6aqmxtJ9Ntuaaj2O7T9g1BeFBsd3IzuOqeqiPWZ8jHa0vR4U6hSCLEkWyP_uAkNRYrZK1c1akJ6H79QCNtEFRVtJbp8XozhH1i6yyUiDQrMtzcmp3QM888YUW7mjnvVFRv2oGp25j7D2QYh34-7bPw" alt=""  />
</p>
<p>I would recommend <a href="https://www.dronahq.com/signup/?utm_source=medium&amp;utm_medium=pdsocial&amp;utm_campaign=amitesh" target="_blank" class="highlight-line"><strong>DronaHQ</strong></a> for building internal operational tools. With its free trial, businesses can experience its powerful low-code platform firsthand. Starting at just $10, DronaHQ offers affordable <a href="https://www.dronahq.com/pricing/?utm_source=medium&amp;utm_medium=pdsocial&amp;utm_campaign=amitesh" target="_blank" class="highlight-line">pricing plans</a> that cater to organizations of all sizes. It empowers users to streamline operational processes, automate workflows, and integrate data from multiple sources. With its user-friendly interface and robust features, DronaHQ is a cost-effective solution for boosting productivity and efficiency within your organization.</p>
<p><strong>Just before we go, here are a few developer features you get with DronaHQ:</strong></p>
<p><strong>1. Drag &amp; Drop builder</strong></p>
<p>It offers a wide range of over 100 flexible, reusable, and feature-rich UI components right out of the box with a drag-and-drop interface. From tables and menus to charts and detailed views, DronaHQ has thoughtfully curated these components to make building interfaces a breeze. </p>
<p><strong>2. Pre-built templates</strong></p>
<p>DronaHQ hooks you up with a huge selection of pre-made templates for internal apps, saving you heaps of time and effort during development. No need to start from scratch – just pick a template, get an option to customize it, and you&rsquo;re good to go!</p>
<p><strong>3. Backend configuration</strong></p>
<p>It provides extensive support for a diverse range of data sources, giving users the flexibility they need. With their dedicated connectors, you can integrate data from sources like Postgres, MySQL, REST, Oracle, Google Sheets, REST APIs, GraphQLs, and many others. This means you can effortlessly build a custom UI layer that connects and harmonizes disparate data sources.</p>
<p><strong>4. Role-based access control</strong></p>
<p>With features like login authentication, email verification, user roles, and permissions, you will have full control over who can access sensitive information and how they interact with your app.</p>
<p><strong>5. Native UI controls</strong> </p>
<p>From file upload and QR scanner to barcode, geolocation, image compressor, GPS, signature, and beyond, get a comprehensive toolkit to enhance user experiences and unlock endless possibilities for your app&rsquo;s functionality.</p>
<p><strong>6. Custom JavaScript</strong></p>
<p>Whether it&rsquo;s designing custom UI components, configuring frontend logic, importing JS libraries, or transforming API responses, DronaHQ empowers you to leverage the full potential of JavaScript to tailor your app exactly the way you want it.</p>
<p><strong>7. Same app for web and mobile</strong></p>
<p>With DronaHQ, you can develop a single portal that seamlessly caters to both mobile and web platforms. No need for duplicate efforts or managing multiple codebases.</p>
<p><strong>8. White-labeled apps</strong></p>
<p>Customize and brand your apps to reflect your unique identity, providing a consistent and seamless user experience across different platforms.</p>
<p><strong>9. Audit logs</strong> </p>
<p>DronaHQ automatically stores information about all the run-level queries, API calls, etc for audit purposes.</p>
<p><strong>10. Add-ons</strong></p>
<p>DronaHQ has recently introduced a few amazing additions to its platform, now you can add webhook or scheduled-based automation to your process with automation add-ons, and you can generate PDF reports instantly for your app data, and also securely embed apps built on DronaHQ to your own custom portals or websites.</p>
<p><strong>11. Security</strong></p>
<p>DronaHQ is SOC-II and ISO 27001 certified, and all plans include SSL encryption to keep your data safe. </p>
<h2 id="why-i-choose-dronahqhttpswwwdronahqcomsignuputm_sourcemediumutm_mediumpdsocialutm_campaignamitesh">Why I choose <a href="https://www.dronahq.com/signup/?utm_source=medium&amp;utm_medium=pdsocial&amp;utm_campaign=amitesh" target="_blank" class="highlight-line">DronaHQ</a>?</h2>
<p>When it comes to building internal operational tools, DronaHQ offers unique advantages that set it apart from other platforms. With its intuitive drag-and-drop builder, extensive library of pre-built templates, and robust features like backend configuration and role-based access control, <a href="https://www.dronahq.com/signup/?utm_source=medium&amp;utm_medium=pdsocial&amp;utm_campaign=amitesh" target="_blank" class="highlight-line"><strong>DronaHQ</strong></a> empowers organizations to streamline processes and enhance productivity. Additionally, its cost-effective pricing plans and user-friendly interface make it an ideal choice for businesses of all sizes seeking efficient and customizable solutions for their operational needs.</p>
<p><strong>Get started building your first internal app, you can sign up for free</strong> <a href="https://www.dronahq.com/signup/?utm_source=medium&amp;utm_medium=pdsocial&amp;utm_campaign=amitesh" target="_blank" class="highlight-line"><strong>here</strong></a><strong>!</strong></p>
<p>Folks, As a tech influencer, I&rsquo;ve explored several tools for building internal applications. Alongside DronaHQ, I recommend considering <a href="https://www.outsystems.com/?utm_source=medium&amp;utm_medium=pdsocial&amp;utm_campaign=DronaHQ" target="_blank" class="highlight-line">OutSystems</a> for enterprise-grade applications, <a href="https://powerapps.microsoft.com/en-us/?utm_source=medium&amp;utm_medium=pdsocial&amp;utm_campaign=DronaHQ" target="_blank" class="highlight-line">Microsoft Power Apps</a> for seamless integration with the Microsoft ecosystem, <a href="https://www.mendix.com/?utm_source=medium&amp;utm_medium=pdsocial&amp;utm_campaign=DronaHQ" target="_blank" class="highlight-line">Mendix</a> for collaboration and agility, <a href="https://appian.com/?utm_source=medium&amp;utm_medium=pdsocial&amp;utm_campaign=DronaHQ" target="_blank" class="highlight-line">Appian</a> for robust process automation, and Salesforce Lightning for tailored Salesforce integration. Each tool offers unique features and advantages, so choose based on your organization&rsquo;s specific requirements and technology stack.</p>
<p><strong>I hope this article will help you build a powerful internal app for your business.</strong></p>
<h4 id="if-you--my-content-connect-me-on--twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on  <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>Projects &amp; Contributions</title><link>https://mranand.com/projects/</link><pubDate>Sun, 19 Mar 2023 00:00:00 +0000</pubDate><guid>https://mranand.com/projects/</guid><description>This page showcases a list of open source projects developed or started by me over the period of time. Also contain some open-source contributions. Order is random and codes are hosted on GitHub.</description><content:encoded><![CDATA[<h2 id="personal-projects">Personal Projects</h2>
<dl>
<dt><a href="https://mranand.com/" target="_blank" class="highlight-line">Personal Website</a> <em>Creator</em> <em>2022 - present</em></dt>
<dd>(The website you are currenly on) Hosted on GitHub. Uses <a href="https://gohugo.io/" target="_blank" class="highlight-line">Hugo</a> &amp; theme <a href="https://git.io/hugopapermod" target="_blank" class="highlight-line">PaperMod</a> to render Markdown pages. 🆕 Comments using <a href="https://giscus.app/" target="_blank" class="highlight-line">giscus.app</a> which uses <a href="https://github.com/Astrodevil/Astrodevil.github.io/discussions" target="_blank" class="highlight-line">Github Discussions</a> for storing comments.</dd>
<dt><a href="https://github.com/Astrodevil/Open-Source-Gallery" target="_blank" class="highlight-line">Open Source Gallery</a> <em>Creator &amp; Maintainer</em> <em>2021 - present</em></dt>
<dd>Open-Source-Gallery provides you with all the resources needed to become a good open-source contributor. The motive🎯 of this project is to help new learners to get familiar with the world of open-source.</dd>
<dt><a href="https://github.com/ZeroOctave/ZeroOctave-Javascript-Projects" target="_blank" class="highlight-line">ZeroOctave Javascript Projects</a> <em>Creator &amp; Maintainer</em> <em>2021 - present</em></dt>
<dd>Started to practice my web development skills but made open to more contributors later. This repository now contains 150+ mini projects created using HTML, CSS &amp; Javascript.</dd>
<dt><a href="https://resourcegallery.live/" target="_blank" class="highlight-line">Resource Gallery</a> <em>Creator &amp; Maintainer</em> <em>2023 - present</em></dt>
<dd>This repository contains a list of resources for learning web development, machine learning, open source, and other programming languages. Made using <a href="https://astro.build/" target="_blank" class="highlight-line">Astro</a> &amp; hosted on <a href="https://pages.cloudflare.com/" target="_blank" class="highlight-line">Cloudflare Pages</a> for managing DNS records.</dd>
<dt><a href="https://github.com/ZeroOctave/Hacktoberfest-Swags" target="_blank" class="highlight-line">Hacktoberfest Swags </a> <em>Creator</em> <em>2022</em></dt>
<dd>Made for new contributors to find some good issues and solve it during Hacktoberfest. Curated some good opportunities to grab cool swags by adding value to awesome projects. Contribute quality, and Get rewarded!</dd>
</dl>
<h2 id="open-source-contributions">Open Source Contributions</h2>
<p><a href="https://quine.sh?utm_source=widgets&amp;utm_campaign=Astrodevil" target="_blank" class="highlight-line"><img loading="lazy" src="https://stats.quine.sh/Astrodevil/github?theme=light" alt="Astrodevil&amp;rsquo;s GitHub | Stats"  />
</a></p>
<p><a href="https://quine.sh?utm_source=widgets&amp;utm_campaign=Astrodevil" target="_blank" class="highlight-line"><img loading="lazy" src="https://stats.quine.sh/Astrodevil/languages-over-time?theme=light" alt="Astrodevil&amp;rsquo;s GitHub | Languages Over Time"  />
</a></p>
]]></content:encoded></item><item><title>JavaScript Fundamentals: Objects</title><link>https://mranand.com/blogs/javascript-fundamentals-objects/</link><pubDate>Tue, 03 Jan 2023 16:52:05 +0530</pubDate><guid>https://mranand.com/blogs/javascript-fundamentals-objects/</guid><description>Day 13 of #100DaysOfCode</description><content:encoded><![CDATA[<p>Today is the 13th day of my <strong>#100DaysOfCode</strong> journey with JavaScript.</p>
<p>I write about my learnings in an explained way through my blogs and socials. If you want to join me on the learning journey, make sure to follow my blogs and social and share yours too. <strong>Let&rsquo;s learn together!🫱🏼‍🫲🏼</strong></p>
<p>This Article is a part of the <a href="https://mranand.com/series/javascript-fundamentals/" target="_blank" class="highlight-line">JavaScript Fundamentals</a> series.</p>
<h3 id="objects">Objects</h3>
<p>In JavaScript, almost &ldquo;everything&rdquo; is an object. JavaScript objects start with an open curly-brace <code>{</code> and end with a closed curly brace <code>}</code>. It contains key-value pairs in between these braces.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">team</span> <span style="color:#f92672">=</span> {
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">name</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#34;India&#34;</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">wins</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">91</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">inFinals</span><span style="color:#f92672">:</span> <span style="color:#66d9ef">true</span>,
</span></span><span style="display:flex;"><span>};
</span></span></code></pre></div><p>In above object <code>team</code>, we have three keys: <code>name</code>, <code>wins</code> and <code>inFinals</code>. The value associated with <code>name</code> is <code>&quot;India&quot;</code>, with <code>wins</code> is <code>86</code> and with <code>inFinals</code> is <code>true</code>.</p>
<p><strong>Example:</strong> Let&rsquo;s create an object representing a pizza order! In the <code>order</code> object, add the following three keys with values accordingly:</p>
<p><code>pizzas</code> - Any number greater than zero.</p>
<p><code>extraCheese</code> - A boolean. Either <code>true</code> or <code>false</code>.</p>
<p><code>deliveryInstructions</code> - Any string of instructions.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">order</span> <span style="color:#f92672">=</span> {
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">pizzas</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">5</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">extraCheese</span><span style="color:#f92672">:</span> <span style="color:#66d9ef">true</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">deliveryInstructions</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#34;Keep it medium&#34;</span>,
</span></span><span style="display:flex;"><span>};
</span></span></code></pre></div><h3 id="retrieve-values">Retrieve Values</h3>
<p>Now we will retrieve values from object. From the given code, If we wanted to retrieve the name of the team, we can do this in two ways:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">team</span> <span style="color:#f92672">=</span> {
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">name</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#34;India&#34;</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">wins</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">91</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">inFinals</span><span style="color:#f92672">:</span> <span style="color:#66d9ef">true</span>,
</span></span><span style="display:flex;"><span>};
</span></span></code></pre></div><div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>( <span style="color:#a6e22e">team</span>.<span style="color:#a6e22e">name</span> ); <span style="color:#75715e">// India
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>( <span style="color:#a6e22e">team</span>[<span style="color:#e6db74">&#39;name&#39;</span>] ); <span style="color:#75715e">// India
</span></span></span></code></pre></div><p>Brackets <code>[]</code> or <code>.</code> property accessor operator can be used, similar to arrays!</p>
<h3 id="array-of-objects">Array of Objects</h3>
<p>Now, we will see what happens if we put objects inside arrays and vice versa.</p>
<p>Let&rsquo;s take our team example again:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">team</span> <span style="color:#f92672">=</span> {
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">name</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#34;India&#34;</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">wins</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">91</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">inFinals</span><span style="color:#f92672">:</span> <span style="color:#66d9ef">true</span>,
</span></span><span style="display:flex;"><span>};
</span></span></code></pre></div><p>What if we have multiple teams:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">teams</span> <span style="color:#f92672">=</span> [<span style="color:#a6e22e">India</span>, <span style="color:#a6e22e">Australia</span>, <span style="color:#a6e22e">England</span>];
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">for</span>(<span style="color:#66d9ef">let</span> <span style="color:#a6e22e">i</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">0</span>; <span style="color:#a6e22e">i</span> <span style="color:#f92672">&lt;</span> <span style="color:#a6e22e">teams</span>.<span style="color:#a6e22e">length</span>; <span style="color:#a6e22e">i</span><span style="color:#f92672">++</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#a6e22e">teams</span>[<span style="color:#a6e22e">i</span>].<span style="color:#a6e22e">name</span>); 
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p>This example loops over each team and logs out the name of each team.</p>
<p><strong>Example:</strong> Given an array of pizza orders, return the total number of pizzas ordered. The <code>orders</code> are an array of objects, each with <code>pizzas</code> key inside.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">numberOfPizzas</span>(<span style="color:#a6e22e">orders</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">let</span> <span style="color:#a6e22e">total</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">0</span>;
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">for</span>(<span style="color:#66d9ef">let</span> <span style="color:#a6e22e">i</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">0</span>; <span style="color:#a6e22e">i</span> <span style="color:#f92672">&lt;</span> <span style="color:#a6e22e">orders</span>.<span style="color:#a6e22e">length</span>; <span style="color:#a6e22e">i</span><span style="color:#f92672">++</span>) {
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">total</span> <span style="color:#f92672">+=</span> <span style="color:#a6e22e">orders</span>[<span style="color:#a6e22e">i</span>].<span style="color:#a6e22e">pizzas</span>;
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#a6e22e">total</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><h3 id="enumerated-types">Enumerated Types</h3>
<p>When numbers are defined, code is easier to read and maintain. Consider the following instance:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">card</span> <span style="color:#f92672">=</span> {
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">suit</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">1</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">value</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">5</span>
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p>Spades, Clubs, Hearts, and Diamond cards are suits.</p>
<p>What is the <code>suit</code> of this card? We are aware that the value is <code>1</code>, but what does that actually mean? Let&rsquo;s define <code>CARD_SUITS</code>:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">CARD_SUITS</span> <span style="color:#f92672">=</span> {
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">DIAMONDS</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">0</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">HEARTS</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">1</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">SPADES</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">2</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">CLUBS</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">3</span>
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p>We can identify our card <code>suit</code> by using this object:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">card</span> <span style="color:#f92672">=</span> {
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">suit</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">CARD_SUITS</span>.<span style="color:#a6e22e">HEARTS</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">value</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">5</span>
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p>It only needs to be changed once in <code>CARD_SUITS</code> if we ever wish to change which suit belongs to which value. This type of object is commonly referred to as an Enumeration.</p>
<p><strong>Example:</strong> Let&rsquo;s create an enumeration like <code>CARD_SUITS</code> above. Our enumeration will be named <code>ORDER_TYPES</code> and describe the different types of orders that are possible in our system. The first type should be <code>PIZZA,</code> with a value of <code>0</code>. After that, create at least 2 more options of your choice!</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">ORDER_TYPES</span> <span style="color:#f92672">=</span> {
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">PIZZA</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">0</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">WINGS</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">1</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">SALAD</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">2</span>,
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><h3 id="importing-files">Importing Files</h3>
<p>Let&rsquo;s import the <code>ORDER_TYPES</code> we just created into <code>numberOfPizzas.js</code>.</p>
<p>We can use <code>require</code> to pull in the exports from <code>orderType.js</code>:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">ORDER_TYPES</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#39;./orderTypes&#39;</span>);
</span></span></code></pre></div><p><strong>Example:</strong> Modify the <code>numberOfPizzas</code> function to only count pizzas when the <code>order.type</code> is equal to <code>ORDER_TYPES.PIZZA</code>.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#75715e">// orderTypes.js
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">ORDER_TYPES</span> <span style="color:#f92672">=</span> {
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">PIZZA</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">0</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">WINGS</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">1</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">SALAD</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">2</span>,
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#75715e">// numberOfPizzas.js
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">ORDER_TYPES</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#39;./orderTypes&#39;</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">numberOfPizzas</span>(<span style="color:#a6e22e">orders</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">let</span> <span style="color:#a6e22e">total</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">0</span>;
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">for</span>(<span style="color:#66d9ef">let</span> <span style="color:#a6e22e">i</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">0</span>; <span style="color:#a6e22e">i</span> <span style="color:#f92672">&lt;</span> <span style="color:#a6e22e">orders</span>.<span style="color:#a6e22e">length</span>; <span style="color:#a6e22e">i</span><span style="color:#f92672">++</span>) {
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">if</span> (<span style="color:#a6e22e">orders</span>[<span style="color:#a6e22e">i</span>].<span style="color:#a6e22e">type</span> <span style="color:#f92672">===</span> <span style="color:#a6e22e">ORDER_TYPES</span>.<span style="color:#a6e22e">PIZZA</span>) {
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">total</span> <span style="color:#f92672">+=</span> <span style="color:#a6e22e">orders</span>[<span style="color:#a6e22e">i</span>].<span style="color:#a6e22e">pizzas</span>;
</span></span><span style="display:flex;"><span>        }
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#a6e22e">total</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><h3 id="number-of-keys">Number of Keys</h3>
<p>There are a few approaches to obtaining every key in an object. To iterate across all properties, we can use the <code>in</code> operator:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">object</span> <span style="color:#f92672">=</span> { <span style="color:#a6e22e">a</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">1</span>, <span style="color:#a6e22e">b</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">2</span>, <span style="color:#a6e22e">c</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">3</span> } 
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">for</span>(<span style="color:#66d9ef">let</span> <span style="color:#a6e22e">key</span> <span style="color:#66d9ef">in</span> <span style="color:#a6e22e">object</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#a6e22e">key</span>);
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p>After 3 iterations this will log <code>a</code>, <code>b</code> and <code>c</code> which are the keys of <code>object</code>. We can use some methods on <code>object</code> that will return an array of that data.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">object</span> <span style="color:#f92672">=</span> { <span style="color:#a6e22e">a</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">1</span>, <span style="color:#a6e22e">b</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">2</span>, <span style="color:#a6e22e">c</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">3</span> } 
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>( Object.<span style="color:#a6e22e">keys</span>(<span style="color:#a6e22e">object</span>) ); <span style="color:#75715e">// [&#39;a&#39;, &#39;b&#39;, &#39;c&#39;]
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>( Object.<span style="color:#a6e22e">values</span>(<span style="color:#a6e22e">object</span>) ); <span style="color:#75715e">// [1, 2, 3]
</span></span></span></code></pre></div><p><strong>Example:</strong> Given an object, find the number of keys inside the object. Return this number.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">numberOfKeys</span>(<span style="color:#a6e22e">object</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> Object.<span style="color:#a6e22e">keys</span>(<span style="color:#a6e22e">object</span>).<span style="color:#a6e22e">length</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><h3 id="edit-object-values">Edit Object Values</h3>
<p>We can also edit values in an object.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">person</span> <span style="color:#f92672">=</span> {
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">name</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#34;Sohan&#34;</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">age</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">21</span>
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">person</span>.<span style="color:#a6e22e">name</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;Rohan&#34;</span>;
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">person</span>[<span style="color:#e6db74">&#34;age&#34;</span>] <span style="color:#f92672">=</span> <span style="color:#ae81ff">40</span>;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>( <span style="color:#a6e22e">person</span>.<span style="color:#a6e22e">name</span> ); <span style="color:#75715e">// Rohan
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>( <span style="color:#a6e22e">person</span>.<span style="color:#a6e22e">age</span> ); <span style="color:#75715e">// 40
</span></span></span></code></pre></div><p>In retrieval, we can use the <code>.</code> or <code>[]</code> notation. We can also remove keys completly.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">person</span> <span style="color:#f92672">=</span> { 
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">name</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#34;Tom&#34;</span>
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">delete</span> <span style="color:#a6e22e">person</span>.<span style="color:#a6e22e">name</span>;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>( <span style="color:#a6e22e">person</span>.<span style="color:#a6e22e">name</span> ); <span style="color:#75715e">// undefined
</span></span></span></code></pre></div><h3 id="modify-object">Modify Object</h3>
<p>In JavaScript, objects are passed by reference. We can write functions to modify objects.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">modify</span>(<span style="color:#a6e22e">object</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">object</span>.<span style="color:#a6e22e">message</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;Hello World&#34;</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p>Let&rsquo;s create an object and pass it to the above function:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">store</span> <span style="color:#f92672">=</span> {
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">name</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#34;Star Eleven&#34;</span> 
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">modify</span>(<span style="color:#a6e22e">store</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#a6e22e">store</span>.<span style="color:#a6e22e">message</span>); <span style="color:#75715e">// Hello World
</span></span></span></code></pre></div><p>The <code>object</code> argument within the <code>modify</code> method is referencing the same memory as the <code>store</code>. Passing by reference is defined as this.</p>
<p>The <code>object</code> gets updated everywhere it is referenced when it is updated using the <code>modify</code> function.</p>
<h3 id="conclusion">Conclusion</h3>
<p>Ending with an extra bit of information about JavaScript&hellip;</p>
<p>A JavaScript object is a state-and-behaviour-containing entity (properties and method). Examples include a car, pen, bicycle, chair, glass, keyboard, and monitor. JavaScript is an object-based language. In JavaScript, everything is an object. JavaScript relies on templates rather than classes. To obtain the object in this case, no class is created. But we deliberately make objects.</p>
<p>It is always a good idea to be careful about modifying objects directly! The function is modifying something outside of its scope, potentially leading to unexpected consequences!</p>
<p><strong>Today I learned about Objects in JavaScript.</strong></p>
<h4 id="if-you--my-content-connect-me-on-twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>JavaScript Fundamentals: Arrays</title><link>https://mranand.com/blogs/javascript-fundamentals-arrays/</link><pubDate>Thu, 29 Dec 2022 16:52:05 +0530</pubDate><guid>https://mranand.com/blogs/javascript-fundamentals-arrays/</guid><description>Day 10, 11 &amp;amp; 12 of #100DaysOfCode</description><content:encoded><![CDATA[<p>Today is the 12th day of my <strong>#100DaysOfCode</strong> journey with JavaScript.</p>
<p>I write about my learnings in an explained way through my blogs and socials. If you want to join me on the learning journey, make sure to follow my blogs and social and share yours too. <strong>Let&rsquo;s learn together!🫱🏼‍🫲🏼</strong></p>
<p>This Article is a part of the <a href="https://mranand.com/series/javascript-fundamentals/" target="_blank" class="highlight-line">JavaScript Fundamentals</a> series.</p>
<h3 id="arrays">Arrays</h3>
<p>In JavaScript, we use arrays to store a list of elements. An array starts with an open square bracket <code>[</code> and ends with a closed square bracket <code>]</code>. The elements inside the array are separated by a comma <code>,</code>.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">numbers</span> <span style="color:#f92672">=</span> [<span style="color:#ae81ff">1</span>, <span style="color:#ae81ff">2</span>, <span style="color:#ae81ff">3</span>, <span style="color:#ae81ff">4</span>];
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">booleans</span> <span style="color:#f92672">=</span> [<span style="color:#66d9ef">true</span>, <span style="color:#66d9ef">false</span>, <span style="color:#66d9ef">true</span>];
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">strings</span> <span style="color:#f92672">=</span> [<span style="color:#e6db74">&#34;happy&#34;</span>, <span style="color:#e6db74">&#34;laugh&#34;</span>];
</span></span></code></pre></div><p>Arrays are mutable means they can be changed. In JavaScript, arrays are objects and can hold multiple values under a single name. Arrays can be stored under arrays, referred to as a nested array.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">nested</span> <span style="color:#f92672">=</span> [[<span style="color:#ae81ff">2</span>, <span style="color:#ae81ff">3</span>, [<span style="color:#ae81ff">2</span>, <span style="color:#ae81ff">3</span>]], <span style="color:#ae81ff">3</span>];
</span></span></code></pre></div><p>While we are iterating over an array, we can keep a running value. We might do this for a variety of reasons. If we wanted to determine the average of several numbers.👇🏼</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">result</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">average</span>([<span style="color:#ae81ff">80</span>,<span style="color:#ae81ff">90</span>,<span style="color:#ae81ff">98</span>,<span style="color:#ae81ff">100</span>]); 
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>( <span style="color:#a6e22e">result</span> ); <span style="color:#75715e">// 92
</span></span></span></code></pre></div><p><strong>Example:</strong> Given an array, find the sum of all even values inside the array and return it.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">sumEven</span>(<span style="color:#a6e22e">array</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">let</span> <span style="color:#a6e22e">sum</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">0</span>;
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">for</span>(<span style="color:#66d9ef">let</span> <span style="color:#a6e22e">i</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">0</span>; <span style="color:#a6e22e">i</span> <span style="color:#f92672">&lt;</span> <span style="color:#a6e22e">array</span>.<span style="color:#a6e22e">length</span>; <span style="color:#a6e22e">i</span><span style="color:#f92672">++</span>){
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">if</span>(<span style="color:#a6e22e">array</span>[<span style="color:#a6e22e">i</span>] <span style="color:#f92672">%</span> <span style="color:#ae81ff">2</span> <span style="color:#f92672">===</span> <span style="color:#ae81ff">0</span>){
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">sum</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">sum</span> <span style="color:#f92672">+</span> <span style="color:#a6e22e">array</span>[<span style="color:#a6e22e">i</span>]
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>            }
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#a6e22e">sum</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><h3 id="array-indexing">Array Indexing</h3>
<p>Arrays have zero-based indexes just like strings. This means that the first element in the array is at the index <code>0</code>, then 1:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">element</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">array</span>[<span style="color:#ae81ff">0</span>];
</span></span></code></pre></div><p><strong>Example:</strong> Complete the function <code>hasOne</code> which takes in an array of numbers. Return <code>true</code> if any of the numbers in the <code>array</code> are <code>1</code>. Return <code>false</code> if not.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">hasOne</span>(<span style="color:#a6e22e">array</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">for</span>(<span style="color:#66d9ef">let</span> <span style="color:#a6e22e">i</span><span style="color:#f92672">=</span><span style="color:#ae81ff">0</span>; <span style="color:#a6e22e">i</span><span style="color:#f92672">&lt;</span><span style="color:#a6e22e">array</span>.<span style="color:#a6e22e">length</span>; <span style="color:#a6e22e">i</span><span style="color:#f92672">++</span>){
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">if</span>(<span style="color:#a6e22e">array</span>[<span style="color:#a6e22e">i</span>] <span style="color:#f92672">===</span> <span style="color:#ae81ff">1</span>){
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">return</span> <span style="color:#66d9ef">true</span>;
</span></span><span style="display:flex;"><span>        }
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#66d9ef">false</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><h3 id="return-new-array">Return New Array</h3>
<p>When formulating a function to filter an array, we can make a fresh array and insert the elements there whenever they meet our condition.</p>
<p>Let&rsquo;s imagine we wish to limit the numbers that an array returns to those that are bigger than 4:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">greaterThanFour</span>(<span style="color:#a6e22e">array</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">newArray</span> <span style="color:#f92672">=</span> [];
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">for</span>(<span style="color:#66d9ef">let</span> <span style="color:#a6e22e">i</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">0</span>; <span style="color:#a6e22e">i</span> <span style="color:#f92672">&lt;</span> <span style="color:#a6e22e">array</span>.<span style="color:#a6e22e">length</span>; <span style="color:#a6e22e">i</span><span style="color:#f92672">++</span>) {
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">element</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">array</span>[<span style="color:#a6e22e">i</span>];
</span></span><span style="display:flex;"><span>        <span style="color:#75715e">// is this element greater than 4?
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        <span style="color:#66d9ef">if</span>(<span style="color:#a6e22e">element</span> <span style="color:#f92672">&gt;</span> <span style="color:#ae81ff">4</span>) {
</span></span><span style="display:flex;"><span>            <span style="color:#75715e">// yes, push this element on our array
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>            <span style="color:#a6e22e">newArray</span>.<span style="color:#a6e22e">push</span>(<span style="color:#a6e22e">element</span>);
</span></span><span style="display:flex;"><span>        }
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#a6e22e">newArray</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p>Here, we&rsquo;re making a new array and adding elements from the <code>array</code> to it only if they are greater than 4 to our <code>newArray</code>. The new array is then returned. <code>push</code> method adds new elements to the array.</p>
<p><strong>Example:</strong> Write a function that will take an array of numbers and return a new array that only contains unique numbers.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">unique</span>(<span style="color:#a6e22e">array</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">let</span> <span style="color:#a6e22e">newArray</span> <span style="color:#f92672">=</span> [];
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">for</span>(<span style="color:#66d9ef">let</span> <span style="color:#a6e22e">i</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">0</span>; <span style="color:#a6e22e">i</span> <span style="color:#f92672">&lt;</span> <span style="color:#a6e22e">array</span>.<span style="color:#a6e22e">length</span>; <span style="color:#a6e22e">i</span><span style="color:#f92672">++</span>) {
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">element</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">array</span>[<span style="color:#a6e22e">i</span>];
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">if</span> (<span style="color:#a6e22e">newArray</span>.<span style="color:#a6e22e">indexOf</span>(<span style="color:#a6e22e">element</span>) <span style="color:#f92672">===</span> <span style="color:#f92672">-</span><span style="color:#ae81ff">1</span>) {
</span></span><span style="display:flex;"><span><span style="color:#75715e">// indexOf method was learned in previous tutorial
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>            <span style="color:#a6e22e">newArray</span>.<span style="color:#a6e22e">push</span>(<span style="color:#a6e22e">element</span>);
</span></span><span style="display:flex;"><span>        }
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#a6e22e">newArray</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><h3 id="modify-array-values">Modify Array Values</h3>
<p>Using square brackets like <code>array[0]</code>, we have learned how to read values from arrays. Similarly, we can use the assignment operator <code>=</code> to assign new values to those places.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">array</span> <span style="color:#f92672">=</span> [<span style="color:#ae81ff">1</span>,<span style="color:#ae81ff">2</span>,<span style="color:#ae81ff">3</span>];
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">array</span>[<span style="color:#ae81ff">0</span>] <span style="color:#f92672">=</span> <span style="color:#ae81ff">6</span>;
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#a6e22e">array</span>); <span style="color:#75715e">// [6,2,3]
</span></span></span></code></pre></div><p><strong>Example:</strong> Complete the <code>addOne</code> function to add <code>1</code> to every element within the array. Since we are modifying the array directly do not return it.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">addOne</span>(<span style="color:#a6e22e">array</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">for</span>(<span style="color:#66d9ef">let</span> <span style="color:#a6e22e">i</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">0</span>; <span style="color:#a6e22e">i</span> <span style="color:#f92672">&lt;</span> <span style="color:#a6e22e">array</span>.<span style="color:#a6e22e">length</span>; <span style="color:#a6e22e">i</span><span style="color:#f92672">++</span>) {
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">array</span>[<span style="color:#a6e22e">i</span>]<span style="color:#f92672">++</span>;
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><h3 id="modify-array">Modify Array</h3>
<p>Let&rsquo;s modify an array to filter it! <code>splice</code> method is used for removing elements from an array. Let&rsquo;s use <code>splice</code> to remove elements that are greater than <code>1</code>:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">array</span> <span style="color:#f92672">=</span> [<span style="color:#ae81ff">1</span>,<span style="color:#ae81ff">2</span>,<span style="color:#ae81ff">3</span>];
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">for</span>(<span style="color:#66d9ef">let</span> <span style="color:#a6e22e">i</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">0</span>; <span style="color:#a6e22e">i</span> <span style="color:#f92672">&lt;</span> <span style="color:#a6e22e">array</span>.<span style="color:#a6e22e">length</span>; <span style="color:#a6e22e">i</span><span style="color:#f92672">++</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">if</span>(<span style="color:#a6e22e">array</span>[<span style="color:#a6e22e">i</span>] <span style="color:#f92672">&gt;</span> <span style="color:#ae81ff">1</span>) {
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">array</span>.<span style="color:#a6e22e">splice</span>(<span style="color:#a6e22e">i</span>, <span style="color:#ae81ff">1</span>);
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#a6e22e">array</span>); <span style="color:#75715e">// [1, 3]
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// This is a Bug🐛
</span></span></span></code></pre></div><p>You must be wondering, why <code>console.log</code> showing <code>1</code> and <code>3</code> even after splicing elements greater than <code>1</code>. Let&rsquo;s see:</p>
<p><strong>Iteration 1:</strong> The index points at the element <code>1</code>. We do not splice <code>1</code> because it is not greater than <code>1</code>. Works fine! <code>i=0</code></p>
<p><strong>Iteration 2:</strong> We find that <code>2</code> is greater than <code>1</code> so we splice at index <code>1</code>. Works fine! <code>i=1</code></p>
<p><strong>Final Iteration:</strong> Array length is <code>2</code> and <code>i=2</code>. Loop condition is that <code>i &lt; array.length</code>, so there are no further iterations at this point. We never removed <code>3</code>!</p>
<ul>
<li><strong>Fix🔥</strong></li>
</ul>
<p>By counting backwards.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">array</span> <span style="color:#f92672">=</span> [<span style="color:#ae81ff">1</span>,<span style="color:#ae81ff">2</span>,<span style="color:#ae81ff">3</span>];
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">for</span>(<span style="color:#66d9ef">let</span> <span style="color:#a6e22e">i</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">array</span>.<span style="color:#a6e22e">length</span> <span style="color:#f92672">-</span> <span style="color:#ae81ff">1</span>; <span style="color:#a6e22e">i</span> <span style="color:#f92672">&gt;=</span> <span style="color:#ae81ff">0</span>; <span style="color:#a6e22e">i</span><span style="color:#f92672">--</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">if</span>(<span style="color:#a6e22e">array</span>[<span style="color:#a6e22e">i</span>] <span style="color:#f92672">&gt;</span> <span style="color:#ae81ff">1</span>) {
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">array</span>.<span style="color:#a6e22e">splice</span>(<span style="color:#a6e22e">i</span>, <span style="color:#ae81ff">1</span>);
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#a6e22e">array</span>); <span style="color:#75715e">// [1]
</span></span></span></code></pre></div><p><strong>Iteration 1:</strong> Starting from end, we remove <code>3</code> because it is greater than <code>1</code> . Works fine! <code>i=2</code></p>
<p><strong>Iteration 2:</strong> Let&rsquo;s move the index <code>i</code> to <code>1</code> . 2 will be removed by splicing at index <code>1</code> . Works fine! <code>i=1</code></p>
<p><strong>Final Iteration:</strong> <code>1</code> is not greater than <code>1</code>, so we do not splice it. We are left with <code>[1]</code> in our array, as expected!</p>
<h3 id="conclusion">Conclusion</h3>
<p>Ending with an extra bit of information about JavaScript functions&hellip;</p>
<p>JavaScript does not care if we modify a value inside the data structure when the word <code>const</code> is used with an object or an array. Arrays are objects, so you may also include arrays while discussing an object&rsquo;s characteristics.</p>
<p><strong>Today I learned about Arrays in JavaScript.</strong></p>
<h4 id="if-you--my-content-connect-me-on-twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>JavaScript Fundamentals: String Looping, Index Of and Slicing Strings</title><link>https://mranand.com/blogs/javascript-fundamentals-string-looping-index-of-and-slicing-strings/</link><pubDate>Sun, 25 Dec 2022 16:52:05 +0530</pubDate><guid>https://mranand.com/blogs/javascript-fundamentals-string-looping-index-of-and-slicing-strings/</guid><description>Day 9 of #100DaysOfCode</description><content:encoded><![CDATA[<p>Today is the 9th day of my <strong>#100DaysOfCode</strong> journey with JavaScript.</p>
<p>I write about my learnings in an explained way through my blogs and socials. If you want to join me on the learning journey, make sure to follow my blogs and social and share yours too. <strong>Let&rsquo;s learn together!🫱🏼‍🫲🏼</strong></p>
<p>This Article is a part of the <a href="https://mranand.com/series/javascript-fundamentals/" target="_blank" class="highlight-line">JavaScript Fundamentals</a> series.</p>
<h3 id="string-looping">String Looping</h3>
<p>Strings are really simple to loop through. We learned how to retrieve characters by using the <code>.length</code> property and <code>[]</code>.</p>
<p>So how can we loop over strings using these?</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">string</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;Hello&#34;</span>;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">for</span>(<span style="color:#66d9ef">let</span> <span style="color:#a6e22e">i</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">0</span>; <span style="color:#a6e22e">i</span> <span style="color:#f92672">&lt;</span> <span style="color:#a6e22e">string</span>.<span style="color:#a6e22e">length</span>; <span style="color:#a6e22e">i</span><span style="color:#f92672">++</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#a6e22e">string</span>[<span style="color:#a6e22e">i</span>]);
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p>It will log: <code>H</code>, <code>e</code>, <code>l</code>, <code>l</code>, <code>o</code> in that order after each iteration.</p>
<p><strong>Example:</strong> Complete the function <code>isAllX</code> to determine if the <strong>entire string</strong> is made of lower-case <code>x</code> or upper-case <code>X</code>. Return <code>true</code> if they are, <code>false</code> if not.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">isAllX</span>(<span style="color:#a6e22e">string</span>) {
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">for</span>(<span style="color:#66d9ef">let</span> <span style="color:#a6e22e">i</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">0</span>; <span style="color:#a6e22e">i</span> <span style="color:#f92672">&lt;</span> <span style="color:#a6e22e">string</span>.<span style="color:#a6e22e">length</span>; <span style="color:#a6e22e">i</span><span style="color:#f92672">++</span>){
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">if</span>(<span style="color:#a6e22e">string</span>[<span style="color:#a6e22e">i</span>].<span style="color:#a6e22e">toLowerCase</span>() <span style="color:#f92672">!==</span> <span style="color:#e6db74">&#34;x&#34;</span>){
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">return</span> <span style="color:#66d9ef">false</span>;
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">return</span> <span style="color:#66d9ef">true</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><h3 id="index-of">Index Of</h3>
<p>In the previous section, we learned to look up a character by <code>index</code>. Now, is the time to find the <code>index</code> of a specific string.</p>
<p><code>indexOf</code> method is used to find the <strong>first</strong> index of a string.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#e6db74">&#34;Hello&#34;</span>.<span style="color:#a6e22e">indexOf</span>(<span style="color:#e6db74">&#34;e&#34;</span>); <span style="color:#75715e">// 1
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#e6db74">&#34;abc&#34;</span>.<span style="color:#a6e22e">indexOf</span>(<span style="color:#e6db74">&#34;q&#34;</span>); <span style="color:#75715e">// -1 
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#e6db74">&#34;happy man dance&#34;</span>.<span style="color:#a6e22e">indexOf</span>(<span style="color:#e6db74">&#34;man&#34;</span>); <span style="color:#75715e">// 6
</span></span></span></code></pre></div><p>Both single characters and entire strings can be searched for in the index! <code>indexOf</code> will return <code>-1</code> if the index could not be located.</p>
<p><strong>Example:</strong> In the <code>string</code> argument find the index of the first lowercase &ldquo;x&rdquo; and return it.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">findFirstX</span>(<span style="color:#a6e22e">string</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#a6e22e">string</span>.<span style="color:#a6e22e">indexOf</span>(<span style="color:#e6db74">&#39;x&#39;</span>);
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><h3 id="slicing-strings">Slicing Strings</h3>
<p>We have another string method <strong>slice!</strong></p>
<p>Slice accepts two parameters: a <strong>start</strong> index and an <strong>end</strong> index. The resulting string is a sliced string between those two indexes, except for the character at the <strong>end</strong> index.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#e6db74">&#34;An apple&#34;</span>.<span style="color:#a6e22e">slice</span>(<span style="color:#ae81ff">0</span>,<span style="color:#ae81ff">2</span>); <span style="color:#75715e">// An
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#e6db74">&#34;The 20 Jokers&#34;</span>.<span style="color:#a6e22e">slice</span>(<span style="color:#ae81ff">4</span>,<span style="color:#ae81ff">8</span>); <span style="color:#75715e">// 20 J
</span></span></span></code></pre></div><p>If the last index is not provided, slice will continue until the end of the string:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#e6db74">&#34;Please Slice Me&#34;</span>.<span style="color:#a6e22e">slice</span>(<span style="color:#ae81ff">7</span>); <span style="color:#75715e">// Slice Me
</span></span></span></code></pre></div><p>We can also use <strong>negative arguments</strong> to slice strings <strong>starting from the end</strong> of the string!</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#e6db74">&#34;the apple&#34;</span>.<span style="color:#a6e22e">slice</span>(<span style="color:#f92672">-</span><span style="color:#ae81ff">5</span>); <span style="color:#75715e">// apple
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#e6db74">&#34;the apple&#34;</span>.<span style="color:#a6e22e">slice</span>(<span style="color:#f92672">-</span><span style="color:#ae81ff">5</span>, <span style="color:#f92672">-</span><span style="color:#ae81ff">1</span>); <span style="color:#75715e">// appl
</span></span></span></code></pre></div><p><strong>Example:</strong> Let&rsquo;s find the longer half of the string before and after the <code>x</code>! First, you&rsquo;ll need to find the <strong>lower-case</strong> <code>x</code>. Once you&rsquo;ve found the <code>x</code>, split the string in half. The first half will be the string before the <code>x</code>, the second half will be the string after the <code>x</code>.</p>
<p>Take the <strong>longer</strong> string and return it!</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#75715e">// split the string at the first occurrence of x
</span></span></span><span style="display:flex;"><span><span style="color:#75715e">// return the larger of the two resulting strings
</span></span></span><span style="display:flex;"><span><span style="color:#75715e">// i.e. HappyxDeveloper =&gt; Developer
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">splitAtX</span>(<span style="color:#a6e22e">string</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">index</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">string</span>.<span style="color:#a6e22e">indexOf</span>(<span style="color:#e6db74">&#39;x&#39;</span>);
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">a</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">string</span>.<span style="color:#a6e22e">slice</span>(<span style="color:#ae81ff">0</span>,<span style="color:#a6e22e">index</span>);
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">b</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">string</span>.<span style="color:#a6e22e">slice</span>(<span style="color:#a6e22e">index</span><span style="color:#f92672">+</span><span style="color:#ae81ff">1</span>);
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> (<span style="color:#a6e22e">a</span>.<span style="color:#a6e22e">length</span> <span style="color:#f92672">&gt;</span> <span style="color:#a6e22e">b</span>.<span style="color:#a6e22e">length</span>) <span style="color:#f92672">?</span> <span style="color:#a6e22e">a</span> <span style="color:#f92672">:</span> <span style="color:#a6e22e">b</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><h3 id="conclusion">Conclusion</h3>
<p>Ending with an extra bit of information about JavaScript functions&hellip;</p>
<p>On strings, there is a <code>lastIndexOf</code> method as well. It locates the string&rsquo;s last occurrence and returns its index.</p>
<p><strong>Today I learned about String Looping, Index Of and Slicing Strings in JavaScript.</strong></p>
<h4 id="if-you--my-content-connect-me-on-twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>JavaScript Fundamentals: String Manipulation</title><link>https://mranand.com/blogs/javascript-fundamentals-string-manipulation/</link><pubDate>Fri, 23 Dec 2022 16:52:05 +0530</pubDate><guid>https://mranand.com/blogs/javascript-fundamentals-string-manipulation/</guid><description>Day 8 of #100DaysOfCode</description><content:encoded><![CDATA[<p>Today is the 8th day of my <strong>#100DaysOfCode</strong> journey with JavaScript.</p>
<p>I write about my learnings in an explained way through my blogs and socials. If you want to join me on the learning journey, make sure to follow my blogs and social and share yours too. <strong>Let&rsquo;s learn together!🫱🏼‍🫲🏼</strong></p>
<p>This Article is a part of the <a href="https://mranand.com/series/javascript-fundamentals/" target="_blank" class="highlight-line">JavaScript Fundamentals</a> series.</p>
<h3 id="comparing-strings">Comparing Strings</h3>
<p>String comparison is actually very simple! The comparison operators <code>===</code>, <code>&lt;</code> and <code>&gt;</code> that we studied in earlier lectures can be used.</p>
<p>For <code>===</code>, we may compare the strings case-sensitively to see if they are identical:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>( <span style="color:#e6db74">&#39;a&#39;</span> <span style="color:#f92672">===</span> <span style="color:#e6db74">&#39;a&#39;</span> ); <span style="color:#75715e">// true
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>( <span style="color:#e6db74">&#39;a&#39;</span> <span style="color:#f92672">===</span> <span style="color:#e6db74">&#39;A&#39;</span> ); <span style="color:#75715e">// false
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>( <span style="color:#e6db74">&#39;a&#39;</span> <span style="color:#f92672">===</span> <span style="color:#e6db74">&#39;a &#39;</span> ); <span style="color:#75715e">// false ------Because the comparison is case-sensitive and requires exact equality, including whitespace.
</span></span></span></code></pre></div><h3 id="looking-up-characters">Looking up Characters</h3>
<p>Characters in strings can be looked up by index in JavaScript. Square brackets <code>[]</code> or <code>charAt</code> are the two methods available for doing this.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#e6db74">&#34;Hello&#34;</span>.<span style="color:#a6e22e">charAt</span>(<span style="color:#ae81ff">1</span>); <span style="color:#75715e">// e
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#e6db74">&#34;Hello&#34;</span>[<span style="color:#ae81ff">1</span>]; <span style="color:#75715e">// e
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// we are looking up the character at the 1 index, which turns out to be the character e.
</span></span></span></code></pre></div><p>Indexing:</p>
<p><code>H - 0</code></p>
<p><code>e - 1</code></p>
<p><code>l - 2</code></p>
<p><code>l - 3</code></p>
<p><code>o - 4</code></p>
<p>Zero-based indexing is used for strings. This indicates that the index of the first character is <code>0</code>, and it increases by 1 for each additional character.</p>
<p><strong>Example:</strong> Complete the <code>startsWithX</code> function to determine if the first character of the <code>string</code> argument is the lower-case <code>x</code>. If the first character is <code>x</code> return <code>true</code>. If not, return <code>false</code>.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">startsWithX</span>(<span style="color:#a6e22e">string</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">if</span>(<span style="color:#a6e22e">string</span>[<span style="color:#ae81ff">0</span>] <span style="color:#f92672">===</span> <span style="color:#e6db74">&#34;x&#34;</span>) {
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">return</span> <span style="color:#66d9ef">true</span>;
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#66d9ef">false</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><h3 id="character-casing">Character Casing</h3>
<p>When working with strings, we frequently prefer to ignore the character casing. Whether it is an upper-case &ldquo;X&rdquo; or lower-case &ldquo;x,&rdquo; we are looking for &ldquo;x&rdquo;.</p>
<p>Manipulating a string&rsquo;s case can be done in two simple ways:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>( <span style="color:#e6db74">&#34;Hello&#34;</span>.<span style="color:#a6e22e">toLowerCase</span>() );<span style="color:#75715e">// hello
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>( <span style="color:#e6db74">&#34;Hello&#34;</span>.<span style="color:#a6e22e">toUpperCase</span>() ); <span style="color:#75715e">// HELLO
</span></span></span></code></pre></div><p>Either of the following can be used to determine whether a string included the word <code>&quot;hello&quot;</code> regardless of its case:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>( <span style="color:#e6db74">&#34;Hello&#34;</span>.<span style="color:#a6e22e">toUpperCase</span>() <span style="color:#f92672">===</span> <span style="color:#e6db74">&#34;HELLO&#34;</span> ); <span style="color:#75715e">// true
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>( <span style="color:#e6db74">&#34;Hello&#34;</span>.<span style="color:#a6e22e">toLowerCase</span>() <span style="color:#f92672">===</span> <span style="color:#e6db74">&#34;hello&#34;</span> ); <span style="color:#75715e">// true
</span></span></span></code></pre></div><p><strong>Example:</strong> Let&rsquo;s update our <code>startsWithX</code>(from previous example) function to return <code>true</code> for an upper-case <code>X</code> as well as a lower-case <code>x</code>.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">startsWithX</span>(<span style="color:#a6e22e">string</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">if</span>(<span style="color:#a6e22e">string</span>[<span style="color:#ae81ff">0</span>].<span style="color:#a6e22e">toLowerCase</span>() <span style="color:#f92672">===</span> <span style="color:#e6db74">&#34;x&#34;</span>) {
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">return</span> <span style="color:#66d9ef">true</span>;
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#66d9ef">false</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><h3 id="string-length">String Length</h3>
<p>Strings have an important feature called length. By using this feature, we can quickly determine how many characters are contained in a string:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>( <span style="color:#e6db74">&#34;a&#34;</span>.<span style="color:#a6e22e">length</span> ); <span style="color:#75715e">// 1
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>( <span style="color:#e6db74">&#34;Hello&#34;</span>.<span style="color:#a6e22e">length</span> ); <span style="color:#75715e">// 5
</span></span></span></code></pre></div><p><strong>Example:</strong> Complete the <code>endsWithX</code> function by detecting if the last character in the string is a lower-case <code>x</code> or an upper-case <code>X</code>. Return <code>true</code> if it is, <code>false</code> if not.</p>
<p>Note: The length value will be 1 greater than the last character index because the character indexing is 0 based.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">endsWithX</span>(<span style="color:#a6e22e">string</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">if</span>(<span style="color:#a6e22e">string</span>[<span style="color:#a6e22e">string</span>.<span style="color:#a6e22e">length</span> <span style="color:#f92672">-</span> <span style="color:#ae81ff">1</span>].<span style="color:#a6e22e">toLowerCase</span>() <span style="color:#f92672">===</span> <span style="color:#e6db74">&#34;x&#34;</span>) {
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">return</span> <span style="color:#66d9ef">true</span>;
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#66d9ef">false</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><h3 id="conclusion">Conclusion</h3>
<p>Ending with an extra bit of information about JavaScript functions&hellip;</p>
<p>Strings in JavaScript allow us to store text that includes characters, integers, and Unicode and is immutable. Additionally, there are numerous built-in functions in JavaScript for creating and manipulating strings in different ways.</p>
<p><strong>Today I learned about String Manipulation in JavaScript.</strong></p>
<h4 id="if-you--my-content-connect-me-on-twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>JavaScript Fundamentals: While Loop, Break and Questions for Practice</title><link>https://mranand.com/blogs/javascript-fundamentals-while-loop-break-and-questions-for-practice/</link><pubDate>Thu, 22 Dec 2022 16:52:05 +0530</pubDate><guid>https://mranand.com/blogs/javascript-fundamentals-while-loop-break-and-questions-for-practice/</guid><description>Day 7 of #100DaysOfCode</description><content:encoded><![CDATA[<p>Today is the 7th day of my <strong>#100DaysOfCode</strong> journey with JavaScript.</p>
<p>I write about my learnings in an explained way through my blogs and socials. If you want to join me on the learning journey, make sure to follow my blogs and social and share yours too. <strong>Let&rsquo;s learn together!🫱🏼‍🫲🏼</strong></p>
<p>This Article is a part of the <a href="https://mranand.com/series/javascript-fundamentals/" target="_blank" class="highlight-line">JavaScript Fundamentals</a> series.</p>
<h3 id="while-loop">While Loop</h3>
<p>As long as the test condition evaluates to <code>true</code>, the while statement generates a loop that performs the provided statement. Before the statement is carried out, the condition is assessed.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">while</span>(<span style="color:#a6e22e">b</span> <span style="color:#f92672">&gt;</span> <span style="color:#ae81ff">7</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#75715e">// do something
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>}
</span></span></code></pre></div><p>We are just stating that if a condition is <code>true</code>, this statement shall be carried out till it is not.👇🏼</p>
<p><strong>Example:</strong> Complete the <code>top</code> double function to find the largest double for the <code>value</code> that is below the <code>top</code>.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">topDouble</span>(<span style="color:#a6e22e">value</span>, <span style="color:#a6e22e">top</span>) {
</span></span><span style="display:flex;"><span>   
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">while</span> (<span style="color:#a6e22e">value</span> <span style="color:#f92672">&lt;</span> <span style="color:#a6e22e">top</span>) {
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">value</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">value</span><span style="color:#f92672">*</span><span style="color:#ae81ff">2</span>;
</span></span><span style="display:flex;"><span>       
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#a6e22e">value</span><span style="color:#f92672">/</span><span style="color:#ae81ff">2</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><h3 id="break-statement">Break Statement</h3>
<p>We will exit the loop once <code>break</code> is hit. Even when the condition is <code>true</code>, there is still a possibility to exit the loop thanks to the <code>break</code> statement.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">while</span>(<span style="color:#66d9ef">true</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">if</span>(<span style="color:#a6e22e">a</span> <span style="color:#f92672">&gt;</span> <span style="color:#ae81ff">5</span>) {
</span></span><span style="display:flex;"><span>        <span style="color:#75715e">// exit the loop
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        <span style="color:#66d9ef">break</span>;
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><h3 id="questions-for-practise">Questions for Practise</h3>
<ul>
<li>
<p>Given an integer value <strong>num</strong>, determine if it is even. If it is even, return <code>true</code>. Return <code>false</code> otherwise.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">isEven</span>(<span style="color:#a6e22e">num</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">if</span> (<span style="color:#a6e22e">num</span> <span style="color:#f92672">%</span> <span style="color:#ae81ff">2</span> <span style="color:#f92672">===</span> <span style="color:#ae81ff">0</span>){
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#66d9ef">true</span>;
</span></span><span style="display:flex;"><span>    } 
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// or
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">isEven</span>(<span style="color:#a6e22e">num</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#a6e22e">num</span> <span style="color:#f92672">%</span> <span style="color:#ae81ff">2</span> <span style="color:#f92672">===</span> <span style="color:#ae81ff">0</span>;      
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div></li>
<li>
<p>The function <code>smallerNumber</code> will be given two unequal numbers: <code>num1</code> and <code>num2</code>. Your goal is to find the smaller number and return it!</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">smallerNumber</span>(<span style="color:#a6e22e">num1</span>, <span style="color:#a6e22e">num2</span>) {
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">if</span> (<span style="color:#a6e22e">num1</span> <span style="color:#f92672">&lt;</span> <span style="color:#a6e22e">num2</span>){
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#a6e22e">num1</span>;
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">else</span> {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#a6e22e">num2</span>;
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div></li>
<li>
<p>A string is stored in the variable <code>fakeName</code>. Take this fake name and use it to replace every occurrence of <code>&quot;John&quot;</code> in the <code>message</code>. Do not change the message in other way.</p>
<p><code>const fakeName = require('./fakeName');</code></p>
<p><code>const message = ` Hello, John! You left a package at the office today. You can pick up tomorrow at 10am, John. If not I will drop it off this weekend. Goodbye John! `;</code></p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">fakeName</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#39;./fakeName&#39;</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">message</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">`
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    Hello, </span><span style="color:#e6db74">${</span><span style="color:#a6e22e">fakeName</span><span style="color:#e6db74">}</span><span style="color:#e6db74">! You left a package at the office today.
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    You can pick up tomorrow at 10am, </span><span style="color:#e6db74">${</span><span style="color:#a6e22e">fakeName</span><span style="color:#e6db74">}</span><span style="color:#e6db74">. 
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    If not I will drop it off this weekend.
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    Goodbye </span><span style="color:#e6db74">${</span><span style="color:#a6e22e">fakeName</span><span style="color:#e6db74">}</span><span style="color:#e6db74">!
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">`</span>;
</span></span></code></pre></div></li>
<li>
<p>The function <code>checkNumber</code> takes a single argument: a number <code>num</code>. The function should return the string <code>positive</code> if the number is positive, <code>negative</code> if the number is negative, and <code>zero</code> if the number is zero.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">checkNumber</span>(<span style="color:#a6e22e">num</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">if</span> (<span style="color:#a6e22e">num</span> <span style="color:#f92672">&gt;</span> <span style="color:#ae81ff">0</span>){
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">return</span> <span style="color:#e6db74">&#39;positive&#39;</span>;
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">else</span> <span style="color:#66d9ef">if</span>(<span style="color:#a6e22e">num</span> <span style="color:#f92672">&lt;</span> <span style="color:#ae81ff">0</span>){
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">return</span> <span style="color:#e6db74">&#39;negative&#39;</span>;
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">else</span> {
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">return</span> <span style="color:#e6db74">&#39;zero&#39;</span>;
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div></li>
<li>
<p>The function <code>maxSum</code> takes a number argument <code>num</code>. Your goal is find the sum all of numbers, starting from 1, up to and including <code>num</code>.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">maxSum</span>(<span style="color:#a6e22e">num</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">let</span> <span style="color:#a6e22e">sum</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">0</span>;
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">for</span>(<span style="color:#66d9ef">let</span> <span style="color:#a6e22e">i</span><span style="color:#f92672">=</span><span style="color:#ae81ff">1</span>; <span style="color:#a6e22e">i</span><span style="color:#f92672">&lt;=</span><span style="color:#a6e22e">num</span>; <span style="color:#a6e22e">i</span><span style="color:#f92672">++</span>){
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">sum</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">sum</span> <span style="color:#f92672">+</span> <span style="color:#a6e22e">i</span>;
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#a6e22e">sum</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div></li>
</ul>
<h3 id="conclusion">Conclusion</h3>
<p>Ending with an extra bit of information about JavaScript functions&hellip;</p>
<p>We can exit loop by using both return and break statement.</p>
<p><strong>Today I learned about While Loop and Break Statement and also practiced a few Questions in JavaScript.</strong></p>
<h4 id="if-you--my-content-connect-me-on-twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>JavaScript Fundamentals: For Loop and Modulus Operator</title><link>https://mranand.com/blogs/javascript-fundamentals-for-loop-and-modulus-operator/</link><pubDate>Wed, 21 Dec 2022 16:52:05 +0530</pubDate><guid>https://mranand.com/blogs/javascript-fundamentals-for-loop-and-modulus-operator/</guid><description>Day 6 of #100DaysOfCode</description><content:encoded><![CDATA[<p>Today is the 6th day of my <strong>#100DaysOfCode</strong> journey with JavaScript.</p>
<p>I write about my learnings in an explained way through my blogs and socials. If you want to join me on the learning journey, make sure to follow my blogs and social and share yours too. <strong>Let&rsquo;s learn together!🫱🏼‍🫲🏼</strong></p>
<p>This Article is a part of the <a href="https://mranand.com/series/javascript-fundamentals/" target="_blank" class="highlight-line">JavaScript Fundamentals</a> series.</p>
<h3 id="loops">Loops</h3>
<p>Loops provide a quick and simple way to repeat an action. Programmers take advantage of this speed by creating scripts that do a task repeatedly until a predetermined condition is satisfied.</p>
<p>In <em>pseudocode</em> this might look a little like this:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">while</span> <span style="color:#a6e22e">we</span> <span style="color:#a6e22e">have</span> <span style="color:#a6e22e">book</span>
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">read</span> <span style="color:#a6e22e">book</span>
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">while</span> <span style="color:#a6e22e">we</span> <span style="color:#a6e22e">have</span> <span style="color:#a6e22e">pages</span> <span style="color:#66d9ef">in</span> <span style="color:#66d9ef">this</span> <span style="color:#a6e22e">book</span>
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">read</span> <span style="color:#a6e22e">page</span>
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">while</span> <span style="color:#a6e22e">we</span> <span style="color:#a6e22e">have</span> <span style="color:#a6e22e">words</span> <span style="color:#a6e22e">on</span> <span style="color:#a6e22e">the</span> <span style="color:#a6e22e">page</span>
</span></span><span style="display:flex;"><span>                <span style="color:#a6e22e">read</span> <span style="color:#a6e22e">word</span> 
</span></span></code></pre></div><h3 id="for-loop">For Loop</h3>
<p>A <code>for</code> loop repeats until a specified condition evaluates to false.</p>
<ul>
<li><strong>Summation</strong> of numbers example:</li>
</ul>
<p>Let&rsquo;s think about how to repeatedly add the digits 1, 2, 3, and 4: The first step is to add 1 to a sum. Then we go to 2, add this to the total, and so on until we get to 4. An iteration occurs each time we add to the total. When the value is more than 4, we iterate until we reach our exit condition.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">let</span> <span style="color:#a6e22e">sum</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">0</span>;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">for</span>(<span style="color:#66d9ef">let</span> <span style="color:#a6e22e">i</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">1</span>; <span style="color:#a6e22e">i</span> <span style="color:#f92672">&lt;=</span> <span style="color:#ae81ff">4</span>; <span style="color:#a6e22e">i</span><span style="color:#f92672">++</span>) { 
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">sum</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">sum</span> <span style="color:#f92672">+</span> <span style="color:#a6e22e">i</span>; 
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p>The <code>for</code> loop can be broken down into the <em>initialization</em>, <em>condition</em>, <em>update</em> and <em>statement</em>: Compare 👇🏼with👆🏼</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-plaintext" data-lang="plaintext"><span style="display:flex;"><span>for ([initialization]; [condition]; [update]) {
</span></span><span style="display:flex;"><span>    statement
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p>The <strong>Initialization</strong> is run once at the beginning of the loop. The <strong>Condition</strong> is checked before each iteration. The <strong>Update</strong> is run at the end of each iteration. The <strong>Statement</strong> is run as long as the Condition is true.</p>
<ul>
<li><strong>Factorial</strong> of numbers example:</li>
</ul>
<p>In mathematics, a factorial is often denoted with an exclamation mark <code>!</code>. The sum of all positive integers greater than 0 up to and including the factorial number <code>n</code> is known as a factorial.</p>
<p>Let&rsquo;s take a look at a few examples of factorials:</p>
<p><code>4! = 4 * 3 * 2 * 1 = 24</code></p>
<p><code>3! = 3 * 2 * 1 = 6</code></p>
<p><code>2! = 2 * 1 = 2</code></p>
<p><strong>Example:</strong> Taking in some integer value <code>n</code>, find the factorial for that number and return it.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">factorial</span>(<span style="color:#a6e22e">n</span>){
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">let</span> <span style="color:#a6e22e">result</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">1</span>;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">for</span> (<span style="color:#66d9ef">let</span> <span style="color:#a6e22e">i</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">1</span>; <span style="color:#a6e22e">i</span> <span style="color:#f92672">&lt;=</span> <span style="color:#a6e22e">n</span>; <span style="color:#a6e22e">i</span><span style="color:#f92672">++</span>){
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">result</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">result</span> <span style="color:#f92672">*</span> <span style="color:#a6e22e">i</span>; <span style="color:#75715e">// or result *= i;
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>}
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">return</span> <span style="color:#a6e22e">result</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><ul>
<li><strong>Strings</strong> in loops example:</li>
</ul>
<p>Let&rsquo;s add some exclamation marks to <code>&quot;Hello World&quot;</code>!</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">let</span> <span style="color:#a6e22e">str</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;Hello World&#34;</span>;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">for</span>(<span style="color:#66d9ef">let</span> <span style="color:#a6e22e">i</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">1</span>; <span style="color:#a6e22e">i</span> <span style="color:#f92672">&lt;=</span> <span style="color:#ae81ff">3</span>; <span style="color:#a6e22e">i</span><span style="color:#f92672">++</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">str</span> <span style="color:#f92672">+=</span> <span style="color:#e6db74">&#34;!&#34;</span>;
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#a6e22e">str</span>); <span style="color:#75715e">// Hello World!!!
</span></span></span></code></pre></div><p><strong>Example:</strong> Let&rsquo;s create a function <code>scream</code> which will take in a value <code>n</code> and return a string with the letter &ldquo;<code>a</code>&rdquo; repeated that many times like <code>scream(5); // &quot;aaaaa&quot;</code></p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">scream</span>(<span style="color:#a6e22e">n</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">let</span> <span style="color:#a6e22e">str</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;&#34;</span>;
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">let</span> <span style="color:#a6e22e">i</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">1</span>;
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">for</span> (<span style="color:#66d9ef">let</span> <span style="color:#a6e22e">i</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">1</span>; <span style="color:#a6e22e">i</span><span style="color:#f92672">&lt;=</span><span style="color:#a6e22e">n</span>; <span style="color:#a6e22e">i</span><span style="color:#f92672">++</span>){
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">str</span> <span style="color:#f92672">+=</span> <span style="color:#e6db74">&#34;a&#34;</span>
</span></span><span style="display:flex;"><span>        }
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#a6e22e">str</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><h3 id="modulus-operator">Modulus Operator</h3>
<p><code>%</code> operator is called the modulus operator. It will tell us the remainder of a division. When you divide <code>9</code> by <code>2</code> you get. Or <code>4</code> with a remainder of <code>1</code>. The expression <code>9</code> % <code>2</code> evaluates to that remainder: <code>1</code></p>
<p>Let&rsquo;s take a look at a few examples:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#ae81ff">8</span> <span style="color:#f92672">%</span> <span style="color:#ae81ff">3</span>) <span style="color:#75715e">// 2
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#ae81ff">9</span> <span style="color:#f92672">%</span> <span style="color:#ae81ff">2</span>) <span style="color:#75715e">// 1
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#ae81ff">7</span> <span style="color:#f92672">%</span> <span style="color:#ae81ff">4</span>) <span style="color:#75715e">// 3
</span></span></span></code></pre></div><p><strong>Example:</strong> Let&rsquo;s modify our function to return a scream alternating between lower and capital case, like these:</p>
<p><code>console.log( scream(4) ); // aAaA console.log( scream(9) ); // aAaAaAaAa</code></p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">scream</span>(<span style="color:#a6e22e">n</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">let</span> <span style="color:#a6e22e">str</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;&#34;</span>;
</span></span><span style="display:flex;"><span>   
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">for</span> (<span style="color:#66d9ef">let</span> <span style="color:#a6e22e">i</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">1</span>; <span style="color:#a6e22e">i</span> <span style="color:#f92672">&lt;=</span> <span style="color:#a6e22e">n</span>; <span style="color:#a6e22e">i</span><span style="color:#f92672">++</span>) {
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">remainder</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">i</span> <span style="color:#f92672">%</span> <span style="color:#ae81ff">2</span>;
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">isEven</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">remainder</span> <span style="color:#f92672">===</span> <span style="color:#ae81ff">0</span>;
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">if</span> (<span style="color:#a6e22e">isEven</span>) {
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">str</span> <span style="color:#f92672">+=</span> <span style="color:#e6db74">&#34;A&#34;</span>;
</span></span><span style="display:flex;"><span>        }
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">else</span> {
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">str</span> <span style="color:#f92672">+=</span> <span style="color:#e6db74">&#34;a&#34;</span>;
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#a6e22e">str</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><h3 id="conclusion">Conclusion</h3>
<p>Ending with an extra bit of information about JavaScript functions&hellip;</p>
<p>At the beginning of the <code>for</code> loop, the <strong>Initialization</strong> is once executed. Each iteration begins with a check of the <strong>Condition</strong>. The <strong>Statement</strong> will be executed if the expression evaluates to true. If it&rsquo;s untrue, the statement won&rsquo;t execute. Each iteration ends with the <strong>Update</strong> being executed. For the subsequent execution of the <strong>Statement</strong>, it may update a variable. As long as the <strong>Condition</strong> is true, the <strong>Statement</strong> is then executed. The actual work of the loop is completed here.</p>
<p><strong>Today I learned about For Loop, Modulus Operator in JavaScript.</strong></p>
<h4 id="if-you--my-content-connect-me-on-twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>JavaScript Fundamentals: Conditionals</title><link>https://mranand.com/blogs/javascript-fundamentals-conditionals/</link><pubDate>Mon, 19 Dec 2022 16:52:05 +0530</pubDate><guid>https://mranand.com/blogs/javascript-fundamentals-conditionals/</guid><description>Day 5 of #100DaysOfCode</description><content:encoded><![CDATA[<p>Today is the 5th day of my <strong>#100DaysOfCode</strong> journey with JavaScript.</p>
<p>I write about my learnings in an explained way through my blogs and socials. If you want to join me on the learning journey, make sure to follow my blogs and social and share yours too. <strong>Let&rsquo;s learn together!🫱🏼‍🫲🏼</strong></p>
<p>This Article is a part of the <a href="https://mranand.com/series/javascript-fundamentals/" target="_blank" class="highlight-line">JavaScript Fundamentals</a> series.</p>
<h3 id="console-log">Console Log</h3>
<p>The <code>console.log</code> will log values during the program&rsquo;s execution. If we <code>console.log</code> a value, that value will show in our test results. You will also often see <code>console.log</code> used in code examples:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">let</span> <span style="color:#a6e22e">a</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">22</span>; 
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">a</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">a</span> <span style="color:#f92672">+</span> <span style="color:#ae81ff">10</span>; 
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#a6e22e">a</span>); <span style="color:#75715e">// 32;
</span></span></span></code></pre></div><h3 id="conditionals">Conditionals</h3>
<p>Conditional statements control behaviour in JavaScript and determine whether or not pieces of code can run.</p>
<ul>
<li>
<p><code>if</code> <strong>Statement</strong></p>
<p>Use of <code>if</code> when needing to branch based on a <strong>condition</strong>:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">if</span>(<span style="color:#ae81ff">1</span> <span style="color:#f92672">===</span> <span style="color:#ae81ff">1</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>( <span style="color:#e6db74">&#34;Yes, it&#39;s true!&#34;</span> );
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p>In the above line, <code>1 === 1</code> is the condition. The <code>===</code> operator referred to as the strict <strong>equality</strong> operator. It compares two values and evaluates them to be <code>true</code> if they are equal.</p>
<p><strong>Example:</strong> Let&rsquo;s complete the isEqual function! If a is equal to b return true.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">isEqual</span>(<span style="color:#a6e22e">a</span>, <span style="color:#a6e22e">b</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span>(<span style="color:#a6e22e">a</span><span style="color:#f92672">===</span><span style="color:#a6e22e">b</span>);
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p><code>!==</code> or <strong>Is Not Equal</strong> referred to as <strong>a strict inequality</strong> operator. This operator will evaluate to <code>true</code> if the two values are not equal.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>( <span style="color:#ae81ff">1</span> <span style="color:#f92672">!==</span> <span style="color:#ae81ff">2</span> ); <span style="color:#75715e">// true
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>( <span style="color:#ae81ff">2</span> <span style="color:#f92672">!==</span> <span style="color:#ae81ff">2</span> ); <span style="color:#75715e">// false
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>( <span style="color:#ae81ff">3</span> <span style="color:#f92672">!==</span> <span style="color:#ae81ff">2</span> ); <span style="color:#75715e">// true
</span></span></span></code></pre></div><p><strong>Example:</strong> Let&rsquo;s complete the <code>isNotEqual</code> function! If <code>a</code> is <strong>not equal</strong> to <code>b</code> return <code>true</code>.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">isNotEqual</span>(<span style="color:#a6e22e">a</span>, <span style="color:#a6e22e">b</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">if</span>(<span style="color:#a6e22e">a</span> <span style="color:#f92672">!==</span> <span style="color:#a6e22e">b</span>){
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">return</span> <span style="color:#66d9ef">true</span>;
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div></li>
<li>
<p><code>else</code> <strong>Statement</strong></p>
<p>The <code>else</code> statement runs only if the <code>if</code> condition is <strong>not true</strong>.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">if</span>(<span style="color:#a6e22e">isRaining</span> <span style="color:#f92672">===</span> <span style="color:#66d9ef">true</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">stayIndoors</span>();
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">else</span> {
</span></span><span style="display:flex;"><span>    <span style="color:#75715e">// isRaining is not true
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>    <span style="color:#a6e22e">goOutside</span>();
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p><strong>Example:</strong> Let&rsquo;s update our <code>isNotEqual</code> function to also handle the case where <code>a</code> is equal to <code>b</code>. If a is not equal to <code>b</code> return true. Otherwise, return <code>false</code>.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">greater</span>(<span style="color:#a6e22e">first</span>, <span style="color:#a6e22e">last</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">if</span> (<span style="color:#a6e22e">first</span> <span style="color:#f92672">&gt;</span> <span style="color:#a6e22e">last</span>){
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">return</span> <span style="color:#a6e22e">first</span>;
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">if</span> (<span style="color:#a6e22e">last</span> <span style="color:#f92672">&gt;</span> <span style="color:#a6e22e">first</span>) {
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">return</span> <span style="color:#a6e22e">last</span>;
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p>Let&rsquo;s take a look at two new operators, greater than <code>&gt;</code> and less than <code>&lt;</code> operators! Both <code>&gt;</code> and <code>&lt;</code> will evaluate to <code>false</code> if the <strong>operands</strong> are <strong>equal</strong>:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#ae81ff">1</span> <span style="color:#f92672">&gt;</span> <span style="color:#ae81ff">3</span>); <span style="color:#75715e">// false
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#ae81ff">3</span> <span style="color:#f92672">&gt;</span> <span style="color:#ae81ff">1</span>); <span style="color:#75715e">// true
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#ae81ff">3</span> <span style="color:#f92672">&lt;</span> <span style="color:#ae81ff">1</span>); <span style="color:#75715e">// false
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#ae81ff">1</span> <span style="color:#f92672">&lt;</span> <span style="color:#ae81ff">3</span>); <span style="color:#75715e">// true
</span></span></span></code></pre></div><p>The values on either side of the operator are referred to as &ldquo;<strong>operands</strong>&rdquo;. The operands for the equation <code>1 &gt; 3</code> are <code>1</code> and <code>3</code>.</p>
</li>
<li>
<p><code>&gt;=</code> or <code>&lt;=</code> <strong>Operator</strong></p>
<p>Both <code>&gt;=</code> and <code>&lt;=</code> will evaluate to <code>true</code> when the <strong>operands</strong> are equal, unlike the <code>&gt;</code> and <code>&lt;</code> operators.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">greaterThanOrEqualTo</span>(<span style="color:#a6e22e">a</span>, <span style="color:#a6e22e">b</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">if</span>(<span style="color:#a6e22e">a</span> <span style="color:#f92672">&gt;</span> <span style="color:#a6e22e">b</span>) {
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">return</span> <span style="color:#66d9ef">true</span>;
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">if</span>(<span style="color:#a6e22e">a</span> <span style="color:#f92672">===</span> <span style="color:#a6e22e">b</span>) {
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">return</span> <span style="color:#66d9ef">true</span>;
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// or
</span></span></span><span style="display:flex;"><span><span style="color:#75715e">// Both will accomplish the same functionality.
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">isEqual</span>(<span style="color:#a6e22e">a</span>,<span style="color:#a6e22e">b</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">if</span>(<span style="color:#a6e22e">a</span> <span style="color:#f92672">===</span> <span style="color:#a6e22e">b</span>) {
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">return</span> <span style="color:#66d9ef">true</span>;
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#66d9ef">false</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div></li>
<li>
<p><code>else If</code> <strong>Statement</strong></p>
<p>We can use <code>else</code> and <code>if</code> together:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">if</span>(<span style="color:#a6e22e">firstCondition</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#75715e">// firstCondition is true
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>}
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">else</span> <span style="color:#66d9ef">if</span> (<span style="color:#a6e22e">otherCondition</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#75715e">// firstCondition is not true and otherCondition is true
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>}
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">else</span> {
</span></span><span style="display:flex;"><span>    <span style="color:#75715e">// neither condition is true
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>}
</span></span></code></pre></div><p>What happens if the two conditions were <code>true</code>?</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">a</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">true</span>;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">b</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">true</span>;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">if</span>(<span style="color:#a6e22e">a</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#75715e">// this will run
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>}
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">else</span> <span style="color:#66d9ef">if</span> (<span style="color:#a6e22e">b</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#75715e">// this will not run!
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>}
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">else</span> {
</span></span><span style="display:flex;"><span>    <span style="color:#75715e">// this will definitely not run.
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>}
</span></span></code></pre></div><p>The important thing to take away from this is that <code>else</code> statements will only run if the original condition is not <code>true</code>.</p>
</li>
</ul>
<h3 id="conclusion">Conclusion</h3>
<p>Ending with an extra bit of information about JavaScript&hellip;</p>
<p>In order to guarantee that code is readable to a standard, many organisations maintain a rigid style guide. <code>{}</code> are typically recommended for <code>if/else</code> statements.</p>
<p><strong>Today I learned about Conditionals, If, Else, Else If in JavaScript.</strong></p>
<h4 id="if-you--my-content-connect-me-on-twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>JavaScript Fundamentals: Math Object</title><link>https://mranand.com/blogs/javascript-fundamentals-math-object/</link><pubDate>Sun, 18 Dec 2022 16:52:05 +0530</pubDate><guid>https://mranand.com/blogs/javascript-fundamentals-math-object/</guid><description>Day 4 of #100DaysOfCode</description><content:encoded><![CDATA[<p>Today is the 4th day of my <strong>#100DaysOfCode</strong> journey with JavaScript.</p>
<p>I write about my learnings in an explained way through my blogs and socials. If you want to join me on the learning journey, make sure to follow my blogs and social and share yours too. <strong>Let&rsquo;s learn together!🫱🏼‍🫲🏼</strong></p>
<p>This Article is a part of the <a href="https://mranand.com/series/javascript-fundamentals/" target="_blank" class="highlight-line">JavaScript Fundamentals</a> series.</p>
<p>Today, I learned about <code>Math.random</code>, <code>Math.floor</code> Functions and to call a function within our function.</p>
<h3 id="mathrandom">Math.random</h3>
<p>In JavaScript, there are many math utilities on the <code>Math</code> object. To get a random number we can call the <code>Math.random</code> function.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">myRandomNumber</span> <span style="color:#f92672">=</span> Math.<span style="color:#a6e22e">random</span>();
</span></span></code></pre></div><p>The above line will return some number between <code>0</code> and <code>1</code> (not including <code>1</code>). <code>Math.random</code> can also be used to generate random numbers between the range.</p>
<p><strong>Example:</strong> Inside <code>getRandom</code>, get a random number from the <code>Math.random()</code> function. Then, return that number!👇🏼</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">getRandom</span>() {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> Math.<span style="color:#a6e22e">random</span>();
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p>A random number between <code>0</code> and <code>100</code> could be created by simply multiplying the output:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#75715e">// randomNumber will be between 0 and 100
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">randomNumber</span> <span style="color:#f92672">=</span> Math.<span style="color:#a6e22e">random</span>() <span style="color:#f92672">*</span> <span style="color:#ae81ff">100</span>;
</span></span></code></pre></div><p>We could multiply and then add to get a random number between <code>15</code> and <code>100</code>:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#75715e">// randomNumber will be between 15 and 100
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">randomNumber</span> <span style="color:#f92672">=</span> (Math.<span style="color:#a6e22e">random</span>() <span style="color:#f92672">*</span> <span style="color:#ae81ff">85</span>) <span style="color:#f92672">+</span> <span style="color:#ae81ff">15</span>;
</span></span></code></pre></div><h3 id="mathfloor">Math.floor</h3>
<p><code>Math.floor</code> takes arguments.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">two</span> <span style="color:#f92672">=</span> Math.<span style="color:#a6e22e">floor</span>(<span style="color:#ae81ff">2.2598223</span>);
</span></span></code></pre></div><p><code>Math.floor</code> function will take <code>2.2598223</code> and return <code>2</code>. A number will be rounded to the nearest integer using this function. For instance, if the input was <code>2.9999</code>, the method would round it to <code>2</code>.</p>
<p><strong>Example:</strong> Take the argument <code>x</code> and use <code>Math.floor</code> to turn it into an integer without the values after the decimal place. Once you have this floored value, return it!</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">getFloor</span>(<span style="color:#a6e22e">x</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> Math.<span style="color:#a6e22e">floor</span>(<span style="color:#a6e22e">x</span>);
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><h3 id="conclusion">Conclusion</h3>
<p>Ending with an extra bit of information about JavaScript functions&hellip;</p>
<p>The JavaScript Math object allows us to perform mathematical tasks on numbers. There are various math object properties.</p>
<p><strong>Today I learned about Math.random, Math.floor Functions in JavaScript.</strong></p>
<h4 id="if-you--my-content-connect-me-on-twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>JavaScript Fundamentals: Parameters, Arguments and Operators</title><link>https://mranand.com/blogs/javascript-fundamentals-parameters-arguments-and-operators/</link><pubDate>Sat, 17 Dec 2022 16:52:05 +0530</pubDate><guid>https://mranand.com/blogs/javascript-fundamentals-parameters-arguments-and-operators/</guid><description>Day 3 of #100DaysOfCode</description><content:encoded><![CDATA[<p>Today is the 3rd day of my <strong>#100DaysOfCode</strong> journey with JavaScript.</p>
<p>I write about my learnings in an explained way through my blogs and socials. If you want to join me on the learning journey, make sure to follow my blogs and social and share yours too. <strong>Let&rsquo;s learn together!🫱🏼‍🫲🏼</strong></p>
<p>This Article is a part of the <a href="https://mranand.com/series/javascript-fundamentals/" target="_blank" class="highlight-line">JavaScript Fundamentals</a> series.</p>
<p>I studied functions yesterday, check the previous <a href="https://astrodevil.hashnode.dev/javascript-fundamentals-mutable-letcomments-functions" target="_blank" class="highlight-line">article</a>. Today it&rsquo;s time to know more about functions and the use of operators.</p>
<h3 id="parameters-and-arguments"><strong>Parameters and Arguments</strong></h3>
<p>Both the terms <strong>parameter</strong> and <strong>argument</strong> refer to the inputs supplied to a function.</p>
<p>Here&rsquo;s a function with two inputs:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">addNumbers</span>(<span style="color:#a6e22e">a</span>, <span style="color:#a6e22e">b</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#a6e22e">a</span> <span style="color:#f92672">+</span> <span style="color:#a6e22e">b</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p>In the above code, there are two <strong>parameters</strong>: <code>a</code> and <code>b</code>. These are the variables that are defined in the function declaration.</p>
<p>If we were to call this function with two values: <code>2</code> and <code>4</code></p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#a6e22e">addNumbers</span>(<span style="color:#ae81ff">2</span>, <span style="color:#ae81ff">4</span>);
</span></span></code></pre></div><p>The values <code>2</code> and <code>4</code> would be considered <strong>arguments</strong>. Arguments are the data supplied to the function to get filled into parameters.</p>
<h3 id="operators">Operators</h3>
<p>JavaScript operators are symbols that are used to perform operations on operands. These are <code>+</code>, <code>-</code>, <code>*</code>, <code>/</code> .</p>
<p><code>+</code> <strong>Operator</strong></p>
<p>The <code>+</code> is referred to as an addition operator.</p>
<p>Complete the <code>addTwo</code> function to take an input and add <code>5</code> to it.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">addTwo</span>(<span style="color:#a6e22e">input</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">output</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">input</span> <span style="color:#f92672">+</span> <span style="color:#ae81ff">5</span>;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#a6e22e">output</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p><code>*</code> <strong>Operator</strong></p>
<p>The <code>*</code> is referred to as a multiplication operator.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">a</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">3</span>;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">b</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">a</span> <span style="color:#f92672">*</span> <span style="color:#ae81ff">4</span>;
</span></span></code></pre></div><p>In the above code, <code>b</code> will have the value <code>12</code>! We are using the multiplication operator to multiply <code>3</code> and <code>4</code>.</p>
<p>Let&rsquo;s see with multiple inputs👇🏼by putting multiple inputs under <code>()</code> separated with <code>comma</code>!</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">product</span>(<span style="color:#ae81ff">2</span>,<span style="color:#ae81ff">3</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#ae81ff">2</span><span style="color:#f92672">*</span><span style="color:#ae81ff">3</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p><code>/</code> <strong>Operator</strong></p>
<p>The <code>/</code> is referred to as a division operator.</p>
<p>Find the average of some numbers:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">sum</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">2</span> <span style="color:#f92672">+</span> <span style="color:#ae81ff">7</span> <span style="color:#f92672">+</span> <span style="color:#ae81ff">6</span>;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">average</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">sum</span> <span style="color:#f92672">/</span> <span style="color:#ae81ff">3</span>;
</span></span></code></pre></div><p>Or we can use parenthesis <code>()</code>:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">average</span> <span style="color:#f92672">=</span> (<span style="color:#ae81ff">2</span> <span style="color:#f92672">+</span> <span style="color:#ae81ff">7</span> <span style="color:#f92672">+</span> <span style="color:#ae81ff">6</span>) <span style="color:#f92672">/</span> <span style="color:#ae81ff">3</span>;
</span></span></code></pre></div><p>In the above code, the sum of <code>2</code>, <code>7</code>, and <code>6</code> is <code>15</code>. Then we divide <code>15</code> by <code>3</code> (<code>15 / 3</code>) to get <code>5</code>.</p>
<p>The parenthesis will always be evaluated first before any other part of the expression.</p>
<h3 id="conclusion">Conclusion</h3>
<p>Ending with an extra bit of information about JavaScript functions&hellip;</p>
<p>Priority is given to division and multiplication above addition and subtraction. Expressions are evaluated from left to right if the precedence of the operators is the same, as it is when division and multiplication are used.</p>
<p><strong>Today I learned about Parameters, Arguments and Operators in JavaScript.</strong></p>
<h4 id="if-you--my-content-connect-me-on-twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>JavaScript Fundamentals: Mutable let,Comments, Functions</title><link>https://mranand.com/blogs/javascript-fundamentals-mutable-letcomments-functions/</link><pubDate>Fri, 16 Dec 2022 16:52:05 +0530</pubDate><guid>https://mranand.com/blogs/javascript-fundamentals-mutable-letcomments-functions/</guid><description>Day 2 of #100DaysOfCode</description><content:encoded><![CDATA[<p>Today is the 2nd day of my <strong>#100DaysOfCode</strong> journey with JavaScript.</p>
<p>I am going to write about my learnings in an explained way through my blogs and socials. If you want to join me on the learning journey, make sure to follow my blogs and social and share yours too. <strong>Let&rsquo;s learn together!🫱🏼‍🫲🏼</strong></p>
<p>This Article is a part of the <a href="https://mranand.com/series/javascript-fundamentals/" target="_blank" class="highlight-line">JavaScript Fundamentals</a> series.</p>
<h3 id="mutable-let">Mutable let</h3>
<p>We worked on variables in the last section and now going further with variables, how can we change the stored value inside of a variable?</p>
<p>We used <code>const</code> keyword to declare a constant variable, but if we try to change the value it will give errors.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">a</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">4</span>;
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">a</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">8</span>;
</span></span></code></pre></div><p>If we try to run above the line, it will give <code>TypeError: Assignment to constant variable</code> . Constants are immutable, meaning their value cannot change.</p>
<p>Here comes the keyword <code>let</code> which allows the value to be mutable (meaning it can change).</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">let</span> <span style="color:#a6e22e">a</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">4</span>;
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">a</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">8</span>;
</span></span></code></pre></div><p>The above line will run without error.</p>
<h3 id="comments">Comments</h3>
<p>Comments are an important part of programs. Writing good comments is also necessary to be a good programmer and to write clean code.</p>
<p>Coming up with good variable names is also important.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">value</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">99</span>;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">price</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">99</span>;
</span></span></code></pre></div><p>Both hold the same value <code>99</code> but <code>price</code> is more descriptive.</p>
<p>Comments are only for humans to understand code in a better way. We can write single-line or multi-line comments.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#75715e">// this is price in U.S. Dollars
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">price</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">99</span>;
</span></span></code></pre></div><div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#75715e">/* The price of all items
</span></span></span><span style="display:flex;"><span><span style="color:#75715e">   Denominated in U.S. Dollars  */</span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">price</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">99</span>;
</span></span></code></pre></div><h3 id="functions">Functions</h3>
<p>A function is a reusable code and it returns an output. The function must be defined before calling it. Function call means to execute the function. The word <em>invoke</em> is also used and the meaning is the same as call.</p>
<p>When a function is called, It means you&rsquo;re passing specific input values.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">output</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">addOne</span>(<span style="color:#ae81ff">5</span>);
</span></span></code></pre></div><p>In the code above, <code>addOne</code> is the function and parenthesis <code>( )</code> is used to call the function. We are passing in an input value 5 into our function addOne.</p>
<p>It is not mandatory to have input values in the function. See the below example.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">message</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">getMessage</span>();
</span></span></code></pre></div><p>In order to call a function, we must first define it!</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">addOne</span>(<span style="color:#a6e22e">input</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#a6e22e">input</span> <span style="color:#f92672">+</span> <span style="color:#ae81ff">2</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p>In the above code, we are creating a function called <code>addOne</code> which takes one input called input. We are returning the input plus two.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">function</span> <span style="color:#a6e22e">getMessage</span>() {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#e6db74">&#34;Hello World!&#34;</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p>In the above code, function <code>getMessage</code> does not take input. We are simply returning a string, saying &ldquo;Hello World!&rdquo;. The <code>return</code> statement will return the desired output of the function.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">a</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">addOne</span>(<span style="color:#ae81ff">2</span>);
</span></span></code></pre></div><p>Variable <code>a</code> is now assigned to the return value of the <code>addOne</code> function invoked with an input of 2, which evaluates to 4.</p>
<h3 id="conclusion">Conclusion</h3>
<p>Ending with an extra bit of information about JavaScript functions&hellip;</p>
<p>If we define/declare a function once, it can be called elsewhere in the program.</p>
<p><strong>Today I learned about Mutable let, Comments, and Functions in JavaScript.</strong></p>
<h4 id="if-you--my-content-connect-me-on-twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>JavaScript Fundamentals: Number Variable, Multiple Variables, Booleans, Strings</title><link>https://mranand.com/blogs/javascript-fundamentals-number-variable-multiple-variables-booleans-strings/</link><pubDate>Thu, 15 Dec 2022 16:52:05 +0530</pubDate><guid>https://mranand.com/blogs/javascript-fundamentals-number-variable-multiple-variables-booleans-strings/</guid><description>Day 1 of #100DaysOfCode</description><content:encoded><![CDATA[<p>After exams and lots of procrastination, I finally resumed my <strong>#100DaysOfCode</strong> journey with JavaScript. Today is the 1st day of my journey and learned some basic concepts of JavaScript.</p>
<p>I am going to write about my learnings in an explained way through my blogs and socials. If you want to join me on the learning journey, make sure to follow my blogs and social and share yours too. <strong>Let&rsquo;s learn together!🫱🏼‍🫲🏼</strong></p>
<h3 id="introduction-to-javascript">Introduction to JavaScript</h3>
<p>The foundation of contemporary online apps is JavaScript. Although that may sound pretentious or flowery, it is also the reality. JavaScript powers the contemporary web, your contemporary servers, and even the development environments on our computers. Whether it is web 2.0 or web 3.0, JavaScript is used everywhere.</p>
<h3 id="number-variable">Number Variable</h3>
<p>A JavaScript variable is nothing more than a name for a storage area. In JavaScript, there are two different sorts of variables: local variables and global variables. When declaring a JavaScript variable, there are several guidelines (also known as identifiers).</p>
<ul>
<li>
<p>The name must begin with an alphabetical letter (from A to Z), an underscore (_), or a dollar sign ($).</p>
</li>
<li>
<p>The first letter can be followed by any number from 0 to 9, such as the value 1.</p>
</li>
<li>
<p>JavaScript variables are case-sensitive; for instance, the variables x and X are distinct.</p>
</li>
<li>
<p>JavaScript variables are written in <strong>lowerCamelCase.</strong> for example <code>const isLoggedIn = true;</code></p>
</li>
<li>
<p>JavaScript cares about variables in one word (not separated by space).</p>
</li>
</ul>
<p>We store values in something called a variable.</p>
<p><code>const a = 5</code></p>
<p>In the above code, <code>a</code> is the variable. Number <code>5</code> is the value to be stored in <code>a</code> and <code>const</code> is a keyword used to declare <code>a</code> as a constant value in JavaScript.</p>
<h3 id="multiple-variables">Multiple Variables</h3>
<p>JavaScript programs run line by line, the line <code>const a = 5</code> is called a statement. In JavaScript, statements should end with <code>;</code> (semi-colon). In some cases, JavaScript automatically inserts semi-colons in a statement. The best practice is to insert <code>;</code> at every statement end.</p>
<p>We can create another variable to store the value of the previous variable.</p>
<p><code>const a = 5;</code></p>
<p><code>const b = a;</code></p>
<p>Both <code>a</code> and <code>b</code> will store the value <code>5</code>.</p>
<h3 id="booleans">Booleans</h3>
<p>A JavaScript Boolean represents one of two values: <strong>true</strong> or <strong>false</strong>.</p>
<p><code>const loggedIn = false;</code></p>
<p>If a user is logged in the above line, the <code>false</code> indicated that they are not.</p>
<p>We can also store boolean values inside variables. If we have to store <code>true</code> in one variable and <code>false</code> in another variable, then:</p>
<p><code>cont a = false;</code></p>
<p><code>const b = true;</code></p>
<h3 id="quotes">Quotes</h3>
<p>Both single <code>' '</code> and double <code>&quot; &quot;</code> quotes can be used when declaring JavaScript strings.</p>
<p>Here, we used double quotes so we could use a single quote inside the message:</p>
<p><code>const message = &quot;Hello, hope you are doing fine!&quot; ;</code></p>
<p>If we needed to use double quotes:</p>
<p><code>const message = 'Then he said, &quot;Hey, are you coming home?&quot;';</code></p>
<p>If we needed to use a double quote inside double quote string, we can use a backslash <code>\</code> as an escape character:</p>
<p><code>const message = &quot;This is double-quote \&quot; inside double-quotes&quot;;</code></p>
<h3 id="strings">Strings</h3>
<p>Strings in JavaScript are used to store and modify text. A string in JavaScript is zero or more characters enclosed in quotes.</p>
<p>Strings are nothing but a bunch of characters (<code>a</code>, <code>b</code>, <code>c</code>) put together.</p>
<p>In JavaScript, there are three ways to define a string. first two of them are:</p>
<ul>
<li>
<p><code>const a = &quot;Hello!&quot;;</code></p>
</li>
<li>
<p>Here, <code>myName</code> and <code>anotherName</code> uses two different types of quotes, single and double. We can use either one or inside of each other.</p>
<p><code>const myName = 'Anand';</code></p>
<p><code>const anotherName = &quot;Vishal&quot;;</code></p>
</li>
</ul>
<p>Now look at the third method to declare strings:</p>
<p><code>const helloMessage = `Hello ${myName}, my name is ${anothername}!`;</code></p>
<p>Here, <code>helloMessage</code> variable uses backticks <code>`</code> . With backticks, we can add values inside the strings. The <code>${variable}</code> is about this. In the above line of code, we are taking value from <code>myName</code> and <code>anotherName</code> and placing them into strings. The variable <code>helloMessage</code> now contains <code>&quot;Hello Anand, my name is Vishal!&quot;</code></p>
<h3 id="conclusion">Conclusion</h3>
<p>Ending with an extra bit of information about JavaScript&hellip;</p>
<p>JavaScript also uses <strong>upper snake case</strong> sometimes like <code>const SERVER_KEY_VALUE = &quot;abcdefg&quot;;</code> This casing is typically reserved for environment variables or values that are needed to be determined before code executions. Like, if you have some secret key that you want to store on the server but not on the local machine, then You might keep that variable tucked away on the server in an environment variable that will require permissions to access or change. These are the types of variables we&rsquo;ll often see with this casing.</p>
<p><strong>Today I learned about Number variables, multiple variables, booleans, quotes and strings in JavaScript.</strong></p>
<h4 id="if-you--my-content-connect-me-on-twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>Astrodevil's 2022 Wrapped: Dev Retro 2022</title><link>https://mranand.com/blogs/astrodevil-year-wrap-dev-retro/</link><pubDate>Mon, 12 Dec 2022 16:52:05 +0530</pubDate><guid>https://mranand.com/blogs/astrodevil-year-wrap-dev-retro/</guid><description>Dev Retro 2022</description><content:encoded><![CDATA[<p>Hey Folks! Long time no see. <strong>2022</strong> is going to end in a few days. In this article, I am going to talk about myself, what I achieved, and my failures this year.</p>
<p><strong>2023 is already knocking at the doors!</strong>🎅🏼</p>
<p>It&rsquo;s time to celebrate the past year&rsquo;s achievements and learn from the mistakes of 2022. Thanks to Hashnode for organizing the <strong>&ldquo;Dev Retro 2022&rdquo;</strong> campaign.</p>
<h2 id="achievements">Achievements🎉</h2>
<h3 id="blogs">Blogs</h3>
<p>Published 6 Articles on my <strong>Blog</strong> this year. Not a great number but I am happy with not quitting due to lack of ideas and time.</p>
<p>Writing is something that made me explore things I didn&rsquo;t even think of. Tech Twitter has changed my life very much, So much to learn from there, seeing good folks there and learning from them is great. Sometimes article ideas just come from Twitter and a little bit of research is over the top of it.</p>
<p><em><strong>Here are my 6 Articles written in 2022, You can check them:</strong></em></p>
<ul>
<li>
<p><a href="https://astrodevil.hashnode.dev/15-recommended-books-for-computer-science-students" target="_blank" class="highlight-line">15 Recommended Books For Computer Science Students</a></p>
</li>
<li>
<p><a href="https://astrodevil.hashnode.dev/make-your-github-profile-standout-to-attract-better-opportunities" target="_blank" class="highlight-line">Make Your GitHub Profile Standout To Attract Better Opportunities</a></p>
</li>
<li>
<p><a href="https://astrodevil.hashnode.dev/some-useful-github-repositories-to-enhance-your-web3-skills" target="_blank" class="highlight-line">Some Useful GitHub Repositories To Enhance Your Web3 Skills</a></p>
</li>
<li>
<p><a href="https://astrodevil.hashnode.dev/learn-and-explore-low-code-no-code-stack-by-involving-in-these-communities" target="_blank" class="highlight-line">Learn and Explore Low-Code / No-Code Stack by Involving in These Communities</a></p>
</li>
<li>
<p><a href="https://astrodevil.hashnode.dev/hacktoberfest-2022-win-swags-for-quality-contributions" target="_blank" class="highlight-line">Hacktoberfest 2022: Win Swags for Quality Contributions</a></p>
</li>
<li>
<p><a href="https://astrodevil.hashnode.dev/creating-personal-blog-with-hugo-and-netlify" target="_blank" class="highlight-line">Creating Personal Blog With Hugo and Netlify</a></p>
</li>
</ul>
<h3 id="open-source-contributions">Open Source Contributions</h3>
<p>Participated in <a href="https://gssoc.girlscript.tech/" target="_blank" class="highlight-line">GirlScript Summer of Code 2022</a> as a project admin and helped fellow contributors to get into open source while collaborating on a web development-based repository containing more than 100 mini projects.</p>
<p>You can check out the repository in this GitHub <a href="https://github.com/ZeroOctave" target="_blank" class="highlight-line">organization</a></p>
<h3 id="opportunities--rewards">Opportunities &amp; Rewards</h3>
<p>I got a paid guest writer role from a no-code platform due to my blogs. It&rsquo;s a thing that I never thought of a year back. But after this, I am more confident in my writing than I ever was.</p>
<p>I also got nominated for <strong>&quot;</strong><a href="https://www.noonies.tech/" target="_blank" class="highlight-line"><strong>THE NOONIES 2022</strong></a><strong>&quot;</strong> in 4 categories out of which I am the runner-up for 3 categories. <strong>THE NOONIES</strong> is a tech award given by <a href="https://hackernoon.com/" target="_blank" class="highlight-line"><strong>Hackernoon</strong></a> each year to bloggers and creators from different categories.</p>
<p><strong>Check it out here:</strong></p>
<ul>
<li>
<p><a href="https://www.noonies.tech/2022/internet-heroes/2022-hackernoon-contributor-of-the-year-books" target="_blank" class="highlight-line">HackerNoon Contributor of the Year- BOOKS</a></p>
</li>
<li>
<p><a href="https://www.noonies.tech/2022/internet-heroes/2022-hackernoon-contributor-of-the-year-job-hunting" target="_blank" class="highlight-line">HackerNoon Contributor of the Year- JOB-HUNTING</a></p>
</li>
<li>
<p><a href="https://www.noonies.tech/2022/internet-heroes/2022-hackernoon-contributor-of-the-year-developer" target="_blank" class="highlight-line">HackerNoon Contributor of the Year- DEVELOPER</a></p>
</li>
<li>
<p><a href="https://www.noonies.tech/2022/programming/2022-hackernoon-contributor-of-the-year-github" target="_blank" class="highlight-line">HackerNoon Contributor of the Year- GitHub</a></p>
</li>
</ul>
<h2 id="failures">Failures🚨</h2>
<p>Honestly, I am not happy with my 2022 work and learning.</p>
<p>Not finishing what I started to learn, be it DSA or Web development. Not written as many blogs as I planned a year back. Lots of mismanagement happened due to shifts in my college work. I had online classes till the first half of 2022 and after that, I got to attend offline classes. this messed up my whole planning and I wasn&rsquo;t able to manage it well.</p>
<p>Mistakes are never meant to be repeated and I am keeping them in check from now on. Offline classes and semester exams had taken lots of time and mismanagement adds fire to that. I can&rsquo;t repeat these mistakes in 2023. I didn&rsquo;t compete for my bigger goal this year.</p>
<h2 id="2023-goals">2023 Goals🎯</h2>
<p>I am not aiming too high for the next year&hellip;</p>
<ul>
<li>
<p>Just want to finish what I started to learn.</p>
</li>
<li>
<p>Will contribute to open source on a more regular basis.</p>
</li>
<li>
<p>Writing articles more often.</p>
</li>
<li>
<p>Finding Internships or Technical writing opportunities.</p>
</li>
</ul>
<h2 id="wrap">Wrap🧵</h2>
<p>It&rsquo;s time to learn from mistakes than get into repentance. This time with proper time management. I know now that my classes are offline and learning will be planned accordingly. My Internship season is approaching soon and I have to be ready for that. Lots of things to be achieved but have to go one step at a time.</p>
<p>I am going to be more active this time on Twitter and will continue to load my Instagram with lots of Tech content. Will be learning &amp; creating content in public.</p>
<p>Lots of good content in 2023!👍🏼</p>
<p><strong>🫱🏼‍🫲🏼Let&rsquo;s Connect</strong></p>
<p><a href="https://www.showwcase.com/astrodevil?referralToken=diy00cbqnih" target="_blank" class="highlight-line">Showwcase</a> &mdash; <a href="https://www.instagram.com/codes.astro/" target="_blank" class="highlight-line">Instagram</a></p>
<p><strong>How was yours? Let me know in the comments!</strong></p>
<h4 id="if-you--my-content-connect-me-on--twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on  <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>Creating Personal Blog With Hugo and Netlify</title><link>https://mranand.com/blogs/creating-personal-blog-with-hugo-and-netlify/</link><pubDate>Tue, 08 Nov 2022 12:30:05 +0530</pubDate><guid>https://mranand.com/blogs/creating-personal-blog-with-hugo-and-netlify/</guid><description>Blog website using a static site generator Hugo and deploying it to Netlify</description><content:encoded><![CDATA[<p>In this Article! I am going to share the step-by-step method I followed while building a blog website using a static site generator <strong><a href="https://gohugo.io/" target="_blank" class="highlight-line">Hugo</a></strong> and deploying it to <strong>Netlify</strong>. I encountered some small errors during the process, I am gonna entertain those as well. Let&rsquo;s get started.</p>
<p>As I am using windows, commands may be different, follow <a href="https://gohugo.io/documentation/" target="_blank" class="highlight-line">official docs</a> while building your own website using Hugo. Also, I am running all commands on git bash.</p>
<h2 id="step-1">Step 1</h2>
<p>Create any folder on Desktop and open <code>git bash</code>. Now time to install hugo.</p>
<pre tabindex="0"><code>choco install hugo -confirm
</code></pre><p>Or if you need the “extended” Sass/SCSS version: for some supported theme. Better install it from <code>cmd</code> by running it as administrator.</p>
<pre tabindex="0"><code>choco install hugo-extended -confirm
</code></pre><h2 id="step-2">Step 2</h2>
<p>Now it&rsquo;s time to create a new website and add a cool theme to it. You can choose any theme from the Hugo theme library. Run below commands.</p>
<pre tabindex="0"><code>// Choose your site name in place of blognerd

hugo new site blognerd
</code></pre><p>The above will create a new Hugo site in a folder named <code>blognerd</code>.</p>
<p>It&rsquo;s time to add theme to the site. See <a href="https://themes.gohugo.io/" target="_blank" class="highlight-line">theme library</a> for a list of themes to consider. I am using <code>Beautiful Hugo</code> theme.</p>
<pre tabindex="0"><code>cd blognerd
git init
</code></pre><p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1667833676076/PKpoGXV0I.png" alt="screely-1667833660447.png"  />

You can access GitHub repo of themes by just clicking download button on theme page as you can see in above picture.
Now, download the theme from GitHub and add it to site&rsquo;s theme directory.</p>
<pre tabindex="0"><code>git submodule add https://github.com/halogenica/beautifulhugo.git  themes/beautifulhugo
</code></pre><p>Now, add the theme to the site configuration:</p>
<pre tabindex="0"><code>echo theme = \&#34;beautifulhugo\&#34; &gt;&gt; config.toml
</code></pre><h2 id="step-3">Step 3</h2>
<p>It&rsquo;s time to add some contents to the newly created site. You can also add them manually but I am creating this using commands.</p>
<pre tabindex="0"><code>hugo new posts/my-first-post.md
</code></pre><p>Now open the whole folder in any code editor, I am using VS Code and edit your post as you wish. You can see the screenshot of mine editor below for reference of posts files.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1667833762276/DsRn2AOzq.png" alt="screely-1667833744897.png"  />
</p>
<p>Above contents may be different for the theme you are using. I am going to add one of my article contents to this post for example, see below screenshot. You can edit metadata between <code>---</code> accordingly.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1667833967425/FSSqga1wz.png" alt="screely-1667833945407.png"  />
</p>
<h2 id="step-4">Step 4</h2>
<p>Now, is the time to test the site we created by running Hugo server.</p>
<pre tabindex="0"><code>hugo server -D  //run only this command 

Start building sites …
hugo v0.105.0-0e3b42b4a9bdeb4d866210819fc6ddcf51582ffa+extended windows/amd64 BuildDate=2022-10-28T12:29:05Z VendorInfo=gohugoio

                   | EN
-------------------+------
  Pages            |  10
  Paginator pages  |   0
  Non-page files   |   0
  Static files     | 184
  Processed images |   0
  Aliases          |   2
  Sitemaps         |   1
  Cleaned          |   0

Built in 4884 ms
</code></pre><p>You can check live view on <code>http://localhost:1313/</code></p>
<p>here&rsquo;s mine live view&hellip;
<img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1667834183565/PRMRHTJtn.png" alt="screely-1667834152910.png"  />
</p>
<h2 id="step-5">Step 5</h2>
<p>It&rsquo;s time to give final touch to the newly created site. You can customize theme or configure site by opening up <code>config.toml</code> in a text editor and edit accordingly. In this theme I took help from their GitHub <a href="https://github.com/halogenica/beautifulhugo#readme" target="_blank" class="highlight-line">readme</a>.</p>
<p>Now, time to build static site. Run below command after closing hugo server by pressing <code>Ctrl+c</code></p>
<pre tabindex="0"><code>hugo -D  //run only this command

Start building sites …
hugo v0.105.0-0e3b42b4a9bdeb4d866210819fc6ddcf51582ffa+extended windows/amd64 BuildDate=2022-10-28T12:29:05Z VendorInfo=gohugoio

                   | EN
-------------------+------
  Pages            |  16
  Paginator pages  |   0
  Non-page files   |   0
  Static files     | 184
  Processed images |   0
  Aliases          |   5
  Sitemaps         |   1
  Cleaned          |   0

Total in 763 ms
</code></pre><h2 id="step-6">Step 6</h2>
<p>Everything is now set. You can add more blog contents or customize the site according to your requirement. Now the final work is to deploy it to <strong>Netlify</strong>.</p>
<p>I have Netlify CLI installed so I am going to the final step, You can install it by going to Netlify official docs and login to your account.</p>
<p>After installing, run following commands:</p>
<pre tabindex="0"><code>netlify dev
</code></pre><p>It will open Netlify live server on <code>http://localhost:8888</code>. After checking everything on your site, close netlify server by pressing <code>Ctrl+c</code>. Time to deploy..</p>
<pre tabindex="0"><code>netlify deploy  //run only this command 

This folder isn&#39;t linked to a site yet
? What would you like to do? (Use arrow keys)
&gt; Link this directory to an existing site
  +  Create &amp; configure a new site
</code></pre><p>Follow the instruction and select <code>(.)</code> directory. Now deploy production.</p>
<pre tabindex="0"><code>netlify deploy --prod

// select public directory 
</code></pre><p>Hurray! Now you can access your live website with Netlify domain from Netlify dashboard. I have created one other site and it&rsquo;s deployed, check my live website <a href="https://bloggeek.netlify.app/" target="_blank" class="highlight-line">here&hellip;</a></p>
<h4 id="if-you--my-content-connect-me-on--twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on  <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>Learn and Explore Low-Code / No-Code Stack by Involving in These Communities</title><link>https://mranand.com/blogs/learn-and-explore-low-code-no-code-stack-by-involving-in-these-communities/</link><pubDate>Fri, 07 Oct 2022 11:45:05 +0530</pubDate><guid>https://mranand.com/blogs/learn-and-explore-low-code-no-code-stack-by-involving-in-these-communities/</guid><description>No-Code /Low-Code is a new trend in tech and you can master this new tech by involving in communities.</description><content:encoded><![CDATA[<p>I am pretty sure you all are familiar with full-stack, MERN stack, and many similar tech stacks related to development. But I will not talk about it because lots of content are already there. I am going to tell you about the <strong>&ldquo;No-Code /Low-Code stack&rdquo;</strong> a new trend in tech and how you will master this new tech by involving in related communities.</p>
<h3 id="what-is-low-code--no-code-stack">What is Low-Code / No-Code Stack?</h3>
<p>This tech stack is nothing but a complete knowledge of Low-Code / No-Code tools and platforms for different stages or processes of software development. Like planning, designing, building, deploying, and launching a fully functional product. It&rsquo;s a new trend, many developers are working in this field and new platforms are coming around low code like Notion or Zapier. If you are not from a tech background and do not want to go deep with coding, You can consider learning this low-code / no-code tech stack and make wonders happen.</p>
<blockquote>
<p>If you don&rsquo;t know about low-code / no-code. Read my article about it. <a href="https://blog.flycode.com/say-no-to-coding-introduction-to-low-code-no-code" target="_blank" class="highlight-line">Here</a></p>
</blockquote>
<blockquote>
<p>If you want to know about some low-code / no-code tools and platforms. Read my article about it. <a href="https://astrodevil.hashnode.dev/40-no-codelow-code-tools-and-resources-for-developers-in-2022" target="_blank" class="highlight-line">Here</a></p>
</blockquote>
<h3 id="explore-low-code--no-code-stack-by-involving-in-these-communities">Explore Low-Code / No-Code Stack by Involving in These Communities</h3>
<p>As you know communities are very important in the tech world, as it helps in many ways. Communities are the best place to find the right solution, You will learn about the true meaning of networking, which goes beyond just following each other on Twitter and connecting on LinkedIn. Communities also help in boosting your capacity for technological proficiency and many more good things. Like finding jobs and helping you in choosing the right step. Communities can be free or paid.</p>
<p>Let&rsquo;s see some good low-code / no-code communities.</p>
<h3 id="1-100-days-of-no-codehttpswww100daysofnocodecom">1. <a href="https://www.100daysofnocode.com/" target="_blank" class="highlight-line">100 days of No Code</a></h3>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1658343702106/0ESyvsbwB.png" alt="screely-1658343687970.png"  />
</p>
<p>100 Days of No Code is a global collective of no-code learners. People from many backgrounds have gathered in this location to learn, connect, and share their knowledge. It has more than 5,000 learners who are bringing their ideas to life. In just 30 minutes a day, you can learn how to use no-code from scratch with the help of some entertaining and helpful bite-sized courses. Both free &amp; paid memberships are available.</p>
<h3 id="2-nocodedevshttpswwwnocodedevscom">2. <a href="https://www.nocodedevs.com/" target="_blank" class="highlight-line">NoCodeDevs</a></h3>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1658344630762/-EGrY86-R.png" alt="screely-1658344621547.png"  />
</p>
<p>The largest collection of no-code tools, applications, and resources available. In the NoCodeDevs community, business owners may find fresh tips and methods for implementing their ideas without writing code and connect with other makers to assist one another in the creation process. Join this community of 20,000+ non-tech founders, 300+ tool directories, and 150+ tutorials. Live workshops and events are also organized.</p>
<h3 id="3-makerpadhttpswwwmakerpadco">3. <a href="https://www.makerpad.co/" target="_blank" class="highlight-line">Makerpad</a></h3>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1658681083559/M8tNPQuIi.png" alt="screely-1658681073602.png"  />
</p>
<p>Ben Tossell founded the Makerpad community in 2019, and it is dedicated to providing no-code education for creating applications and websites, managing online businesses, and automating operations without writing code. Makerpad is free to sign up for, but in order to access premium features, you must buy a membership plan. Members of the Makerpad community can also make their professional profiles public to draw clients looking for specialized assistance with their no-code projects.</p>
<h3 id="4-nocodefoundershttpsnocodefounderscom">4. <a href="https://nocodefounders.com/" target="_blank" class="highlight-line">NoCodeFounders</a></h3>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1658681528172/pf4qwZEqD.png" alt="screely-1658681520294.png"  />
</p>
<p>This is a well-known online network for innovators, makers, solopreneurs, and business people without technical backgrounds. More than 13,000 people are involved. Members take part in online gatherings and activities where they make new relationships and get knowledge about the best no-code platforms. You must pay a one-time cost of $99 to sign up as a premium user. Access to the Slack community, filter unlocks, exclusive tutorials and benefits with unmatched insights into the no-code landscape are all included with membership.</p>
<h3 id="5-webflow-communityhttpswebflowcomcommunity">5. <a href="https://webflow.com/community" target="_blank" class="highlight-line">Webflow Community</a></h3>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1658681757620/JUGE94LtW.png" alt="screely-1658681747686.png"  />
</p>
<p>Connect with the 75,000+ members who are developing the future of visual development and contributing to Webflow. Connect with entrepreneurs, product and project managers, business owners, designers, founders, marketers, and developers from businesses of all sizes and sectors. Webflow is a low-code website builder.</p>
<h3 id="6-nucodehttpswwwnucodeco">6. <a href="https://www.nucode.co/" target="_blank" class="highlight-line">Nucode</a></h3>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1658682616350/eeRNqFLVt.png" alt="screely-1658682535734.png"  />
</p>
<p>Nucode is a community of makers and inventors. There are almost 7000 members in total. You can learn to use tools like Webflow, Glide, and Bubble for nothing! Together, anyone can grow and learn in this amazing space. Your fellow creators can offer you suggestions based on their experience as you submit your knowledge. You can set a challenge for other non-coders to create apps for challenging situations in order to promote a sense of competition in addition to learning.</p>
<h3 id="7-no-code-alleyhttpswwwnocodealleycom">7. <a href="https://www.nocodealley.com/" target="_blank" class="highlight-line">No-Code Alley</a></h3>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1658682924797/IBAXq-yzP.png" alt="screely-1658682914631.png"  />
</p>
<p>Citizens who are no-code developers can connect on a discussion board set up by No-code Alley to solve their business issues. You can discover the top no-code products, their applications, and helpful hints. Additionally, there are specific forums like Stack Overflow where you can post specific queries and get responses from other non-coders.</p>
<h3 id="8-nocode-hqhttpsnocodehqcom">8. <a href="https://nocodehq.com/" target="_blank" class="highlight-line">Nocode HQ</a></h3>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1658683982834/Ywz55tcXw.png" alt="screely-1658683975357.png"  />
</p>
<p>The Nocode HQ community provides a network where developers can talk about problems facing the industry and work together to find innovative solutions. The learning environment provided by the platform includes step-by-step lessons, templates, and expert sessions. You can connect with people who are creating similar items to gain assistance and feedback by hosting a network with social media capabilities.</p>
<p>Joining is free, and it gives you access to a few resources and a place in the community. In addition, you can choose premium membership by paying a monthly charge of $29 for it. You get access to limitless tutorials, premium templates, and cost-free Nocode sessions with a premium membership.</p>
<h3 id="9-nocodelisthttpsnocodelistco">9. <a href="https://nocodelist.co/" target="_blank" class="highlight-line">NoCodeList</a></h3>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1658684448037/kBO3wAG2R.png" alt="screely-1658684276021.png"  />
</p>
<p>The tools and resources needed to build your own no-code product are all collected in one place by No Code List. No Code List also includes No Code Agencies that can assist you in creating no-code goods or services. Numerous other no-code forums, channels, blogs, tutorials, courses, websites, etc. are included in their Resources area. If you sign up, four new tools will be delivered to your inbox every Friday.</p>
<h3 id="10-codem4phttpscodemapio">10. <a href="https://codemap.io/" target="_blank" class="highlight-line">Codem4p</a></h3>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1658688272649/gu0qrjCCQ.png" alt="screely-1658688265395.png"  />
</p>
<p>Clients looking to hire specialists, companies, and independent freelancers can connect through this network. If you are a no-coder looking to work for respected businesses, this is the place for you. You can also interact with your peers, present your work, learn, and get feedback. You also gain access to premium events, professional resources, expert sessions, and discussions about various tools.</p>
<p>Hire the best personnel for automation, no-code, low-code, and remote work. Develop software up to 10 times faster, automate tasks, and launch it in a few of weeks by learning no-code.</p>
<p><strong>I hope you find this article helpful! If you know some other communities, let me know on <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a>.</strong></p>
<h4 id="if-you--my-content-connect-me-on--twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on  <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>Some Useful GitHub Repositories To Enhance Your Web3 Skills</title><link>https://mranand.com/blogs/some-useful-github-repositories-to-enhance-your-web3-skills/</link><pubDate>Mon, 30 May 2022 11:22:05 +0530</pubDate><guid>https://mranand.com/blogs/some-useful-github-repositories-to-enhance-your-web3-skills/</guid><description>GitHub Repositories you can contribute to and enhance your practical knowledge of web3 technologies.</description><content:encoded><![CDATA[<p>As the world is moving towards new technology, Web3 is the most trending of them. Developers are learning this new technology very fast, many companies are also shifting towards decentralized blockchain technology. To become a good web3 developer one need good skills related to tech, and for that, they will need practical knowledge of web3 technologies. Like working on or making projects based on blockchain.</p>
<p>In this article, I am going to share ** Some Useful GitHub Repositories you can contribute** to and enhance your practical knowledge of web3 technologies.</p>
<h3 id="1-100-days-of-web3httpsgithubcomfrancescoxxfree-web3-resources">1. <a href="https://github.com/FrancescoXX/free-Web3-resources" target="_blank" class="highlight-line">100 Days Of Web3</a></h3>
<p>This is a list of Tons of Free Web3 Resources.</p>
<p>This is primarily for Ethereum Developers, but many concepts are shared among different Blockchain or involve different blockchains.</p>
<h3 id="2-awesome-solidityhttpsgithubcombkremawesome-solidity">2. <a href="https://github.com/bkrem/awesome-solidity" target="_blank" class="highlight-line">Awesome Solidity</a></h3>
<p>⟠ A curated list of awesome Solidity resources, libraries, tools and more.</p>
<h3 id="3-gunhttpsgithubcomamarkgun">3. <a href="https://github.com/amark/gun" target="_blank" class="highlight-line">Gun</a></h3>
<p>An open source cybersecurity protocol for syncing decentralized graph data. GUN is a toolkit that allows you to create community-run and encrypted applications, such as an Open Source Firebase or a Decentralized Dropbox. GUN is in use by the Internet Archive and hundreds of other apps. Twitter&rsquo;s Bluesky program includes GUN!</p>
<h3 id="4-web3-uihttpsgithubcomdeveloper-daoweb3-ui">4. <a href="https://github.com/Developer-DAO/web3-ui" target="_blank" class="highlight-line">Web3 Ui</a></h3>
<p>A React UI library for Web3. A library of UI components specifically crafted for web3 use cases.</p>
<h3 id="5-metamask-mobilehttpsgithubcommetamaskmetamask-mobile">5. <a href="https://github.com/MetaMask/metamask-mobile" target="_blank" class="highlight-line">Metamask Mobile</a></h3>
<p>Mobile web browser providing access to websites that use the Ethereum blockchain.</p>
<h3 id="6-nucypherhttpsgithubcomnucyphernucypher">6. <a href="https://github.com/nucypher/nucypher" target="_blank" class="highlight-line">Nucypher</a></h3>
<p>A decentralized threshold cryptography network focused on proxy reencryption.</p>
<h3 id="7-nft-apihttpsgithubcomnft-apinft-api">7. <a href="https://github.com/nft-api/nft-api" target="_blank" class="highlight-line">Nft Api</a></h3>
<p>NFT API that returns resolved metadata and has all information about all NFT collections, users, transactions. Cross-Chain NFT API.</p>
<h3 id="8-maticjshttpsgithubcommaticnetworkmaticjs">8. <a href="https://github.com/maticnetwork/matic.js" target="_blank" class="highlight-line">Matic.js</a></h3>
<p>This repository contains the maticjs client library. maticjs makes it easy for developers, who may not be deeply familiar with smart contract development, to interact with the various components of Matic Network.</p>
<p>This library will help developers to move assets from Ethereum chain to Matic chain, and withdraw from Matic to Ethereum using fraud proofs.</p>
<h3 id="9-blockchain-bookshttpsgithubcomblockchainbooksblockchainbooksgithubio">9. <a href="https://github.com/BlockchainBooks/blockchainbooks.github.io" target="_blank" class="highlight-line">Blockchain Books</a></h3>
<p>A collection of blockchain books to help people learn and become Awesome.</p>
<h3 id="10-web3httpsgithubcomlife-itselfweb3">10. <a href="https://github.com/life-itself/web3" target="_blank" class="highlight-line">web3</a></h3>
<p>Making sense of web3 &amp; crypto. Introduction to key concepts and ideas. Rigorous, constructive analysis of key claims pro and con. A look at the deeper hopes and aspirations.</p>
<h3 id="11-learn-web3-dapphttpsgithubcomfigment-networkslearn-web3-dapp">11. <a href="https://github.com/figment-networks/learn-web3-dapp" target="_blank" class="highlight-line">Learn Web3 Dapp</a></h3>
<p>This Next.js app is designed to be used with the Figment Learn Pathways, to help developers learn about various blockchain protocols such as Solana, NEAR, Secret, Polygon and Polkadot!</p>
<h4 id="if-you--my-content-connect-me-on--twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on  <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>GirlScript Summer of Code Learning And Experiences: From Contributor To Project Admin</title><link>https://mranand.com/blogs/girlscript-summer-of-code-learning-and-experiences/</link><pubDate>Thu, 28 Apr 2022 22:12:05 +0530</pubDate><guid>https://mranand.com/blogs/girlscript-summer-of-code-learning-and-experiences/</guid><description>GSSoC stands for GirlScript Summer of Code. It is a three-month-long Open-Source Program conducted by the GirlScript Foundation for beginners. This year I am selected as project admin for the program. (GSSOC&amp;#39;22) In this article, I am going to share my experiences from being a contributor in an open-source program to the project admin &amp;amp; mentor of one.</description><content:encoded><![CDATA[<p>GSSoC stands for <a href="https://gssoc.girlscript.tech/" target="_blank" class="highlight-line">GirlScript Summer of Code</a>. It is a three-month-long Open-Source Program conducted by the GirlScript Foundation for beginners. This year I am selected as project admin for the program. (GSSOC'22)</p>
<p>In this article, I am going to share my experiences from being a contributor in an open-source program to the project admin &amp; mentor of one.</p>
<h3 id="how-i-started">How I started?</h3>
<p>My first open-source contribution was to a friend&rsquo;s repository. After doing some small contributions I came to know about GSSoC program and I took part in it. This was the first big contribution from my side to any open source project. Before that, I had some experience contributing to <strong>EbookFoundation / free-programming-books</strong>. From that, I learned to communicate over issues and to make pull requests properly. This previous work helped me a lot during GirlScript Summer of Code.</p>
<h3 id="what-i-learned">What I Learned?</h3>
<p>Successful contributions during the program definitely acted as a confidence booster for me. Now, I was more confident to work on any open-source project. While contributing I went through some issues and pull requests where project maintainers were discussing things and I tried to understand their workflow, and how they manage things.</p>
<p>After some time, I decided to take part as a project admin in an open-source program. Hacktoberfest was the best time to do so because many newbies were going to start their open source contributions in the month of October.</p>
<h3 id="what-next">What Next?</h3>
<p>I had created a repository to host small JavaScript projects. It was for personal use first but after the decision of participating as a project admin, I created a GitHub organization <a href="https://github.com/ZeroOctave" target="_blank" class="highlight-line">ZeroOctave</a> and added the same repository inside that. Hacktoberfest was going to start so I thought of taking my chances and as expected some good contributions were added to the repository. I was enjoying my role as a maintainer while guiding contributors for the contribution to my repository.</p>
<p>Just after Hacktoberfest, some more open-source programs were going to start so I applied with my repository and got accepted in two of them. Those programs were <a href="https://icc-techsahead.netlify.app/" target="_blank" class="highlight-line">Infinite Clone Conspiracy</a> &amp; <a href="https://dwoc.io/" target="_blank" class="highlight-line">DWoC'21</a>. These programs were not big enough to attract many contributors but still some good projects were added to our repository and some new members also joined the GitHub organization.</p>
<h3 id="gssoc">GSSoC!</h3>
<p>GSSoC stands for <s>Google</s> GirlScript Summer of Code. As I mentioned earlier, GSSoC'21 acted as the starting step for my open source journey. After 1 year when another version of GSSoC came back, I decided to participate in my project this time. I filled out the registration form with my organization and project details and got selected as project admin. It&rsquo;s a 3-month long program currently going on, many new contributions are coming into our organization repository. <a href="https://github.com/ZeroOctave/ZeroOctave-Javascript-Projects" target="_blank" class="highlight-line">ZeroOctave Javascript Projects</a> is our project repository that is the part of GSSoC'22. Till now 200+ issues created and 200+ pull requests merged.</p>
<p>While doing my work as project admin and coordinating with my project maintainers, I am also focused on enhancing my tech skills. So that I can contribute to some good open-source projects out there.</p>
<h3 id="invitation-for-you">Invitation For You!</h3>
<p>If you are a beginner, you are welcome to contribute to our organization. If you are an active open source contributor or maintainer, you are welcome to join ZeroOctave. Join zeroOctave to add your projects, guide newbies or write articles related to open source.</p>
<p><strong>Invitation Links</strong></p>
<ul>
<li><a href="https://github.com/ZeroOctave" target="_blank" class="highlight-line"> Join ZeroOctave GitHub Organization</a></li>
<li><a href="https://github.com/ZeroOctave#what-you-can-do-here" target="_blank" class="highlight-line">Contribute In Projects</a></li>
<li><a href="https://hashnode.com/teams/invite/0013e746-aa30-4335-9196-5dd3bed50715" target="_blank" class="highlight-line">Join ZeroOctave Blog Team</a></li>
</ul>
<h4 id="if-you--my-content-connect-me-on--twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on  <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>Make Your GitHub Profile Standout To Attract Better Opportunities</title><link>https://mranand.com/blogs/make-your-github-profile-standout-to-attract-better-opportunities/</link><pubDate>Sat, 19 Mar 2022 11:00:05 +0530</pubDate><guid>https://mranand.com/blogs/make-your-github-profile-standout-to-attract-better-opportunities/</guid><description>To screen candidates, the industry is shifting away from resumes and toward GitHub profiles. In the software industry, Open Source projects are widely regarded now. How can recruiters know that the abilities you claim to have are truly the skills you have? When you&amp;#39;re a fresher with no professional experience open-source contributions come in useful. Without any prior industry expertise, GitHub allows you to exhibit your work. As a result, it&amp;#39;s important to make GitHub Profile stand out and present the best version of yourself.</description><content:encoded><![CDATA[<p>To screen candidates, the industry is shifting away from resumes and toward GitHub profiles. In the software industry, Open Source projects are widely regarded now. How can recruiters know that the abilities you claim to have are truly the skills you have? When you&rsquo;re a fresher with no professional experience open-source contributions come in useful. Without any prior industry expertise, GitHub allows you to exhibit your work. As a result, it&rsquo;s important to make GitHub Profile stand out and present the best version of yourself.</p>
<p>In this article, I am shedding light on tips to <strong>Make Your GitHub Profile Standout To Attract Better Opportunities</strong>.</p>
<h2 id="introduction">Introduction!</h2>
<p><a href="https://github.com/Astrodevil" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1643986105138/0oFtVvL6rO.png" alt="screely-1643985124626.png"  />
</a></p>
<p>The above screenshot is of my GitHub profile. I have mentioned my bio in a detailed manner, including contribution graphs, badges, tech stack, proper name, username, profile picture, social handles, and my side hustles. You can also create your GitHub profile like mine or even better. Isn&rsquo;t my profile more detailed and attractive than resume? I hope after seeing the above screenshot you also want to make your GitHub profile stand out. <em>Let&rsquo;s get started!</em></p>
<h2 id="foundation-stone">Foundation Stone</h2>
<p>As you know already, the repository is the main feature of GitHub where every project, content, code is stored properly.</p>
<p>Let&rsquo;s start by creating a special repository after signing in to your GitHub account. <strong>This repository name must be same as your GitHub username</strong>.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1643985010957/IkhnHnKtE.png" alt="screely-1643984983985.png"  />
</p>
<p>This is a ✨special ✨ repository that you can use to add a <a href="https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-readmes" target="_blank" class="highlight-line">README.md</a> to your GitHub profile. Make sure it’s public and initialize it with a README or create a README.md file inside this repository to get started.</p>
<p><a href="https://en.wikipedia.org/wiki/Markdown" target="_blank" class="highlight-line">Markdown</a> will be used to add contents and details in <a href="https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-readmes" target="_blank" class="highlight-line">README</a> file. Learn Markdown syntax from this <a href="https://github.com/Astrodevil/Open-Source-Gallery/blob/main/src/markdown-cheatsheet.pdf" target="_blank" class="highlight-line">cheetsheet</a>. README files are commonly used to write documentation for the project repositories.</p>
<p>It&rsquo;s time to add contents in your profile README.</p>
<ul>
<li>
<h3 id="header">Header</h3>
</li>
</ul>
<p>In the header, you can add your name, greet message, photo or gif, or nothing according to your choice. I am using my profile-related codes, you can change accordingly.</p>
<pre tabindex="0"><code># Hi, I&#39;m Astrodevil &lt;img src=&#34;https://github.com/TheDudeThatCode/TheDudeThatCode/blob/master/Assets/Hi.gif&#34; width=&#34;29px&#34;&gt;
</code></pre><p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1643988124430/yV3R85kVl.png" alt="screely-1643988107672.png"  />
</p>
<ul>
<li>
<h3 id="about">About</h3>
</li>
</ul>
<p>In the About section you can add your little introduction, What you are working on, What are your goals or something like that.</p>
<pre tabindex="0"><code># replace contents according to you.
&lt;table&gt;
  &lt;tr&gt;
    &lt;td valign=&#34;center&#34;&gt;
      🎓 I am currently pursuing my **Bachelor&#39;s in Computer Science Engineering**.
      🌱 I am currently learning **Java** and also interested in **Web Development**.
      🎯 My Goal is to Contribute to as many **open source project** as possible.
      ✨ I love to create different types of **contents**.
&lt;td &gt;
# this is my daily.dev card, you can edit this accordingly
      &lt;a href=&#34;https://app.daily.dev/Astrodevil&#34;&gt;&lt;img src=&#34;https://api.daily.dev/devcards/81fef2c2311f4739a063dbde61b40fe2.png?r=1fr&#34; width=&#34;300&#34; alt=&#34;Mr. Ånand&#39;s Dev Card&#34;/&gt;&lt;/a&gt;
    &lt;/td&gt;
    
  &lt;/tr&gt;
  &lt;/table&gt;
</code></pre><p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1643990740258/Z1jZcLM6f.png" alt="screely-1643989115241.png"  />
</p>
<ul>
<li>
<h3 id="contribution-graph">Contribution Graph</h3>
</li>
</ul>
<p>I have added a contribution graph banner to update daily activity from my GitHub profile. It&rsquo;s a nice way to showcase if you are active frequently and doing some contributions in projects. This graph is updating daily automatically.</p>
<pre tabindex="0"><code> # replace username with your own or change theme
![GitHub Activity Graph](https://activity-graph.herokuapp.com/graph?username=#your-username&amp;theme=dracula&amp;hide_border=true)
</code></pre><p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1643999148850/TYksn6HXu.png" alt="screely-1643999127515.png"  />
</p>
<ul>
<li>
<h3 id="icons--badges">Icons &amp; Badges</h3>
</li>
</ul>
<p>Adding <strong>social handles</strong> on GitHub profile is the best way to connect with peoples and transfer more audience towards your socials. You can use badges for that or icons. You can create badges from <a href="https://shields.io/" target="_blank" class="highlight-line">shields.io</a> and also use icons from <a href="https://www.flaticon.com/free-icons/social-media" target="_blank" class="highlight-line">flaticon</a>. There are tons of site to find attractive icons. You can also add information about your tech stack and tools you are familiar with by using badges and icons.
<img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1644000346031/NDAKl8FYz.png" alt="screely-1644000227962.png"  />

<a href="https://github.com/adityaoberai" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1644000356557/-3x4Rkzzb.png" alt="screely-1644000240039.png"  />
</a></p>
<ul>
<li>
<h3 id="stats-card">Stats Card</h3>
</li>
</ul>
<p>Adding Stats cards to your GitHub page is another common profile enhancement. This is a simple method to display all of your GitHub statistics in a fun, visual way. You can also track your GitHub Streak.</p>
<pre tabindex="0"><code># replace username with your own or change theme
## Stats📈
&lt;p align=&#34;center&#34;&gt;
&lt;img width=&#34;40%&#34; src=&#34;https://github-readme-stats.vercel.app/api/top-langs?username=#your-username&amp;show_icons=true&amp;theme=dracula&amp;title_color=ff8000&amp;text_color=ffffff&amp;bg_color=6a6a6a&amp;locale=en&amp;layout=compact&amp;hide_border=true&#34; alt=&#34;#your-username&#34; /&gt; 
&lt;img width=&#34;48%&#34; src=&#34;https://github-readme-stats.vercel.app/api?username=#your-username&amp;show_icons=true&amp;theme=dracula&amp;title_color=ff8000&amp;text_color=ffffff&amp;bg_color=6a6a6a&amp;locale=en&amp;hide_border=true&#34; alt=&#34;#your-username&#34; /&gt;
&lt;img width=&#34;48%&#34; src=&#34;https://github-readme-streak-stats.herokuapp.com/?user=#your-username&amp;theme=highcontrast&amp;hide_border=true&#34; alt=&#34;#your-username&#34; /&gt;
&lt;/p&gt;
</code></pre><p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1644001673972/Aa_oIfn4V.png" alt="screely-1644001425832.png"  />
</p>
<p>These are the basic customization method that can make your GitHub profile stand out, I used my profile as an example to explain above. You can also add more customization in your GitHub profile README to make it detailed and attractive. <em>Let&rsquo;s see that in next section</em>.</p>
<h2 id="building">Building</h2>
<ul>
<li>You can also <strong>track your activity</strong> and showcase it on your profile README by using a GitHub Action Scripts. Just create <code>/.github/workflows/update-readme.yml</code> inside the repository and paste below code inside update-readme.yml file. This script updates activity every 30 minutes.</li>
</ul>
<pre tabindex="0"><code>name: Update README

on:
  schedule:
    - cron: &#39;*/30 * * * *&#39;
  workflow_dispatch:

jobs:
  build:
    runs-on: ubuntu-latest
    name: Update this repo&#39;s README with recent activity

    steps:
      - uses: actions/checkout@v2
      - uses: jamesgeorge007/github-activity-readme@master
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
</code></pre><p>Add this block to README.md file where you want to showcase your recent activity</p>
<pre tabindex="0"><code>
&lt;!--START_SECTION:activity--&gt;
&lt;!--END_SECTION:activity--&gt;
</code></pre><p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1644003241309/oKOBcwt09.png" alt="screely-1644003225209.png"  />
</p>
<ul>
<li>You can also add your <strong>blogs and side hustles</strong> on your profile README by manually adding it or automating the tasks by using GitHub Actions. Check this <a href="https://astrodevil.hashnode.dev/some-cool-github-actions-you-wont-believe-exists" target="_blank" class="highlight-line">article</a> to know more about helpful actions. You can impress recruiters by showcasing your awesome side hustles.</li>
</ul>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1644005000197/gFSVDnWjN.png" alt="screely-1644004991863.png"  />
</p>
<h2 id="final-touch">Final Touch</h2>
<ul>
<li>
<p>If you don&rsquo;t want to learn Markdown or don&rsquo;t have enough time to write from scratch. You can use <a href="https://rahuldkjain.github.io/gh-profile-readme-generator/" target="_blank" class="highlight-line">GitHub Profile README Generator</a>, <a href="https://gprm.itsvg.in/" target="_blank" class="highlight-line">GPRM</a> or <a href="https://readme.so/" target="_blank" class="highlight-line">readme generator</a> to create your profile README.</p>
</li>
<li>
<p>You can also take inspiration from other profiles by copy-pasting markdown codes in your README to customize accordingly. Here are the <a href="https://eddiehubcommunity.github.io/awesome-github-profiles/profiles" target="_blank" class="highlight-line">example profiles</a> you can take inspiration from.</p>
</li>
</ul>
<p>I hope, This will help you to make your GitHub profile stand-out! What are you waiting for? Now go create your own profile README and open a world of opportunities for yourself. Check out my <a href="https://github.com/Astrodevil" target="_blank" class="highlight-line">GitHub</a>🤝</p>
<h4 id="if-you--my-content-connect-me-on--twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on  <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>15 Recommended Books For Computer Science Students</title><link>https://mranand.com/blogs/15-recommended-books-for-computer-science-students/</link><pubDate>Sat, 19 Mar 2022 10:56:05 +0530</pubDate><guid>https://mranand.com/blogs/15-recommended-books-for-computer-science-students/</guid><description>We are in the modern world where the digitization of education is already going on. Now lots of blogs, articles are there on the internet to learn from. But Book has its own value, the author puts his all knowledge experience and time to write one whole book. The knowledge and details you get from a book are very precious.</description><content:encoded><![CDATA[<p>We are in the modern world where the digitization of education is already going on. Now lots of blogs, articles are there on the internet to learn from. But Book has its own value, the author puts his all knowledge experience and time to write one whole book. The knowledge and details you get from a book are very precious.</p>
<p>In this article, I am going to discuss 15 Recommended Books For Computer Science Students</p>
<h3 id="1-clean-code-a-handbook-of-agile-software-craftsmanshiphttpsamznto3f96hka">1. <a href="https://amzn.to/3F96hkA" target="_blank" class="highlight-line">Clean Code: A Handbook of Agile Software Craftsmanship</a></h3>
<p><a href="https://amzn.to/3F96hkA" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1641891220161/uLyxG3zNT.jpeg" alt="cc.jpg"  />
</a></p>
<p>Because it&rsquo;s more approachable, especially for inexperienced developers, Clean Code is one of the most regularly seen books on a programmer&rsquo;s desk. Clean Code focuses on tactical ideas, such as how to build classes and functions, rather than high-level procedures.</p>
<h3 id="2-head-first-javahttpsamznto3fem9ct">2. <a href="https://amzn.to/3Fem9Ct" target="_blank" class="highlight-line">Head First Java</a></h3>
<p><a href="https://amzn.to/3Fem9Ct" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1642410737622/8H298dREE.jpeg" alt="510l5fQkfoL.jpg"  />
</a></p>
<p>Learning a difficult new language, especially an object-oriented computer programming language like Java, is no simple undertaking. You could believe the issue is with your mind. It appears to have its own mind, one that doesn&rsquo;t always want to take in the dry, technical information you&rsquo;re required to learn. This book is like bible for java beginners.</p>
<h3 id="3-java-the-complete-referencehttpsamznto3gcvnf8">3. <a href="https://amzn.to/3GCVnF8" target="_blank" class="highlight-line">Java: The Complete Reference</a></h3>
<p><a href="https://amzn.to/3GCVnF8" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1642411110679/WMXzl9Q-J.png" alt="image.png"  />

</a>
In &ldquo;Java: The Complete Reference, Eighth Edition,&rdquo; popular programming author Herb Schildt covers all you need to know about writing, building, debugging, and running Java programmes. This comprehensive volume covers the whole Java language, including syntax, keywords, and core programming concepts, and has been updated for Java Platform, Standard Edition 7 (Java SE 7). You&rsquo;ll also learn about the key components of the Java API library. Swing, JavaBeans, servlets, and applets are all addressed, with real-world examples to demonstrate how they function. Try-with-resources, strings in switch, type inference with the diamond operator, NIO.2, and the Fork/Join Framework are all covered in detail.</p>
<h3 id="4-cracking-the-coding-interviewhttpsamznto3ftnw7l">4. <a href="https://amzn.to/3ftNW7l" target="_blank" class="highlight-line">Cracking the Coding Interview</a></h3>
<p><a href="https://amzn.to/3ftNW7l" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1642415984437/csfrM0fqU.png" alt="image.png"  />
</a></p>
<p>Cracking the Coding Interview is well worth your time and money if you&rsquo;re ready to start interviewing with FAANG firms. Everything from the interview procedure to unique scenarios, pre-interview preparation to behavior questions, Big O to technical questions, and 189 real-world programming problems are covered.</p>
<h3 id="5-introduction-to-algorithmshttpsamznto3i8mdqm">5. <a href="https://amzn.to/3I8MDqM" target="_blank" class="highlight-line">Introduction to Algorithms</a></h3>
<p><a href="https://amzn.to/3I8MDqM" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1642411866958/BmiIkLEHg.png" alt="image.png"  />
</a></p>
<p>This book examines a wide range of algorithms in depth while making their creation and analysis accessible to readers of all levels. Each chapter is self-contained and can be utilized as a study unit on its own. The algorithms are given in English and pseudocode that anyone who has done some programming may understand. Without losing the depth of information or mathematical rigor, the explanations have been kept simple.</p>
<h3 id="6-data-structures-and-algorithms-made-easyhttpsamznto3genuks">6. <a href="https://amzn.to/3GEnUKs" target="_blank" class="highlight-line">Data Structures And Algorithms Made Easy</a></h3>
<p><a href="https://amzn.to/3GEnUKs" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1642415939523/K2h6xcVUK.png" alt="image.png"  />
</a></p>
<p>&ldquo;Data Structures And Algorithms Made Easy: Data Structures and Algorithmic Puzzles&rdquo; addresses questions about complex data structures and algorithms. Because each problem has several solutions and the book is written in C/C++, it may be used as an interview and test preparation tool for computer scientists.
Easy Data Structures and Algorithms: Data Structures and Algorithmic Puzzles is a collection of solutions to a variety of difficult problems involving data structures and algorithms. Any expert in computer science will find it useful. It may be used as a reference manual for computer science professionals. This book will assist you in preparing for campus interviews, exams, and employment. In a word, this book presents solutions to a wide range of challenging data structures.</p>
<h3 id="7-the-algorithm-design-manualhttpsamznto3qzqra1">7. <a href="https://amzn.to/3qzqrA1" target="_blank" class="highlight-line">The Algorithm Design Manual</a></h3>
<p><a href="https://amzn.to/3qzqrA1" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1642415902363/TzCVeT6QW.png" alt="image.png"  />
</a></p>
<p>The &ldquo;mystery&rdquo; of building algorithms and measuring their usefulness and efficiency is removed in this substantially extended and updated third edition of the best-selling classic. The book currently serves as the fundamental textbook for algorithm design classes, while also serving as the foremost practical reference guide on algorithms for programmers, researchers, and students, with updates to the first and second editions.</p>
<p>The user-friendly format The Algorithm Design Manual makes combinatorial algorithms technology accessible to anybody, with a focus on design rather than analysis. The first section, Techniques, explains how to develop and analyse computer algorithms in a clear and understandable manner. The second section, Resources, has a library of algorithmic resources, implementations, and a wide bibliography for browsing and reference.</p>
<h3 id="8-eloquent-javascripthttpsamznto3a7p6dr">8. <a href="https://amzn.to/3A7p6DR" target="_blank" class="highlight-line">Eloquent JavaScript</a></h3>
<p><a href="https://amzn.to/3A7p6DR" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1642413043180/IEVC-sVu4.png" alt="image.png"  />
</a></p>
<p>Eloquent JavaScript goes beyond the cut-and-paste scripts found in recipe books to teach you how to write elegant and effective code. Variables, control structures, functions, and data structures are among the first programming concepts you&rsquo;ll study. After that, you&rsquo;ll dive into JavaScript&rsquo;s higher-order functions, closures, and object-oriented programming.</p>
<p>You&rsquo;ll learn how to: Understand the principles of programming and best practises. By combining the capabilities of functional and object-oriented programming, regular expressions may be used to quickly analyse and edit text. Errors and browser incompatibilities should be handled compassionately. Handle browser events and DOM modifications.</p>
<h3 id="9-let-us-chttpsamznto3nzuwsx">9. <a href="https://amzn.to/3nzuWsx" target="_blank" class="highlight-line">Let Us C</a></h3>
<p><a href="https://amzn.to/3nzuWsx" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1642415822343/HyKx24Kbc.png" alt="image.png"  />
</a></p>
<p>The book&rsquo;s simplicity and storytelling style set it out from the packed shelves of C Programming books. These two characteristics have been present in all six prior versions of this book. Today&rsquo;s C programmer must not only learn the language&rsquo;s complexity and nuances, but also deal with its use in systems such as Windows and Linux. This book does an excellent job of covering all three areas of C programming.</p>
<h3 id="10-head-first-design-patternshttpsamznto3qyzxno">10. <a href="https://amzn.to/3qyzxNo" target="_blank" class="highlight-line">Head First Design Patterns</a></h3>
<p><a href="https://amzn.to/3qyzxNo" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1642415773733/Q_v0m-FWne.png" alt="image.png"  />
</a></p>
<p>This book teaches you the patterns that matter, when and why to use them, how to apply them to your own ideas, and the object-oriented design concepts that underpin them. Join the hundreds of thousands of developers who have used Head First Design Patterns to enhance their object-oriented design abilities.</p>
<h3 id="11-the-basics-of-bitcoins-and-blockchainshttpsamznto3fexyes">11. <a href="https://amzn.to/3FExyeS" target="_blank" class="highlight-line">The Basics of Bitcoins and Blockchains</a></h3>
<p><a href="https://amzn.to/3FExyeS" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1642414306694/jfw2Yxacu.png" alt="image.png"  />
</a></p>
<p>Learn about the history and fundamentals of cryptocurrencies and blockchains: There is a wealth of information available about bitcoin and blockchains. However, most of this information may be incomprehensible to the untrained. The Basics of Bitcoins and Blockchains seeks to give an easy-to-understand introduction to this new money and the groundbreaking technology that underlies it.</p>
<h3 id="12-database-system-conceptshttpsamznto3nxbat8">12. <a href="https://amzn.to/3nxBat8" target="_blank" class="highlight-line">Database System Concepts</a></h3>
<p><a href="https://amzn.to/3nxBat8" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1642414662145/UaK8fkAyS.png" alt="image.png"  />
</a></p>
<p>Database System Concepts is a classic and essential work in database education. It presents the fundamental concepts of database management in an easy-to-understand manner, allowing students to begin working with databases straight away.</p>
<p>The text is aimed towards junior/senior undergraduate database courses or first-year graduate database courses. It also includes additional information that may be utilized as a supplement or as a prelude to a more advanced course.</p>
<h3 id="13-python-crash-coursehttpsamznto3a6wxkt">13. <a href="https://amzn.to/3A6wXkT" target="_blank" class="highlight-line">Python Crash Course</a></h3>
<p><a href="https://amzn.to/3A6wXkT" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1642415222287/Q7V-MSOlq.png" alt="image.png"  />
</a></p>
<p>Look no further if you need to learn Python as soon as possible. Python Crash Course is designed to get novice Python programmers up and running quickly.
Learn the fundamentals of programming quickly using a project-based approach, so you can focus on what you want to build: websites, data visualization, online apps, or even programming a Raspberry Pi. Python Crash Course is the world&rsquo;s best-selling Python book.</p>
<h3 id="14-designing-data-intensive-applications-the-big-ideas-behind-reliable-scalable-and-maintainable-systemshttpsamznto3rsqezq">14. <a href="https://amzn.to/3rsQeZQ" target="_blank" class="highlight-line">Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems</a></h3>
<p><a href="https://amzn.to/3rsQeZQ" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1642415371081/U60Ei_rpmE.png" alt="image.png"  />

</a></p>
<p>&ldquo;Foundations of data systems&rdquo; provides an excellent overview of data systems. This section begins by discussing desired database qualities such as dependability, scalability, and maintainability. Database concepts such as the classic relational model, the document model, and graph-based models are investigated. The implementation of data storage and retrieval in databases is then thoroughly explained.
You will learn about SStables, LSM trees, and B-Trees, as well as how they are employed in databases. Data warehousing and column-oriented databases are thoroughly discussed. The distinctions between OLTP and OLAP are presented in a tabular manner. There is a nice introduction to message brokers, protocolbuf, thrift, and avro.</p>
<h3 id="15-object-oriented-programming-with-chttpsamznto3ge7sjp">15. <a href="https://amzn.to/3GE7SjP" target="_blank" class="highlight-line">Object-Oriented Programming with C++</a></h3>
<p><a href="https://amzn.to/3GE7SjP" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1642415714814/sxl5Smsoz.png" alt="image.png"  />
</a></p>
<p>The book&rsquo;s goal is to provide a comprehensive enrichment of knowledge in the domain of object-oriented programming using C++ as the implementation language. The author has utilized simple language to convey important principles of object-oriented programming and to aid readers&rsquo; comprehension. The same ideas have been implemented in solved examples written in the C++ programming language. The book retains its original style of straightforward writing and includes plenty of solved examples, programming exercises, and additional practice problems.</p>
<h4 id="if-you--my-content-connect-me-on--twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on  <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>40+ No Code/Low Code Tools And Resources For Developers In 2024</title><link>https://mranand.com/blogs/40+-no-codelow-code-tools-and-resources-for-developers-in-2022/</link><pubDate>Sat, 01 Jan 2022 17:40:05 +0530</pubDate><guid>https://mranand.com/blogs/40+-no-codelow-code-tools-and-resources-for-developers-in-2022/</guid><description>There are so many no-code tools to make the work of developers easier. Anyone can build some useful products, startups without writing even a single line of code. In this article, we will see 40+ No Code/Low Code Tools And Resources For Developers that is going to help you In 2022. 90% of developers don’t know about these resources.</description><content:encoded><![CDATA[<p>There are so many no-code tools to make the work of developers easier. Anyone can build some useful products, startups without writing even a single line of code. In this article, we will see <strong>40+ No Code/Low Code Tools And Resources For Developers</strong> that is going to help you In 2022.</p>
<h3 id="what-exactly-is-no-code">What exactly is no-code?</h3>
<p>Programming without code is a concise definition. It is the use of no-code tools that allow you to create a fully functional, responsive web application or website without writing any code. However, it goes a little deeper than that.</p>
<p>Every piece of technology, including no-code platforms, is developed with code. The distinction is that no-code platforms provide building elements that are required by any website or application, such as pages, data storage and display, individual user profiles, and file upload. People may then link them into their own program using drag and drop or other &ldquo;human-understood&rdquo; actions that do not require coding.</p>
<h3 id="1-zapierhttpszapiercom">1. <a href="https://zapier.com/" target="_blank" class="highlight-line">Zapier</a></h3>
<p>For folks who are always on the go, automation is a great way to save time. Zapier automates the transfer of data across your online apps, allowing you to focus on your most critical tasks.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639572301955/UV_W_wM64.png" alt="screely-1639572286580.png"  />
</p>
<h3 id="2-font-flipperhttpsfontflippercom">2. <a href="https://fontflipper.com/" target="_blank" class="highlight-line">FONT FLIPPER</a></h3>
<p>You can preview 500+ google fonts on top of your designs using this website.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639572754874/u1_Pb7TYB.png" alt="screely-1639572746616.png"  />
</p>
<h3 id="3-figmahttpswwwfigmacom">3. <a href="https://www.figma.com/" target="_blank" class="highlight-line">Figma</a></h3>
<p>Figma integrates everyone involved in the design process, allowing teams to produce better products in less time. You can create beautiful designs for your work. The “always online” nature of Figma actually provides some of the greatest strengths of the tool. One of those strengths is that Figma allows for live, real-time collaboration. Free + Paid</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639573000906/9Oz4jawWt.png" alt="screely-1639572987345.png"  />
</p>
<h3 id="4-previewedhttpspreviewedapp">4. <a href="https://previewed.app/" target="_blank" class="highlight-line">Previewed</a></h3>
<p>Previewed helps to create smart mockups by just dragging and dropping in the browser. You can create device shots and animated clips.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639573395005/RSQHQEas6.png" alt="screely-1639573384652.png"  />
</p>
<h3 id="5-nocodeapihttpsnocodeapicom">5. <a href="https://nocodeapi.com/" target="_blank" class="highlight-line">NoCodeAPI</a></h3>
<p>NoCodeAPI helps you to set up your Google Sheets, Airtable, Google Analytics, Twitter, Telegram, Open Graph API, MailChimp, and 50+ other apps without a backend to save time and money.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639573722110/AQsGr38Wa.png" alt="screely-1639573709300.png"  />
</p>
<h3 id="6-splinehttpssplinedesign">6. <a href="https://spline.design/" target="_blank" class="highlight-line">Spline</a></h3>
<p>Spline helps you to create beautiful 3D designs to use for your projects and websites.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639573928254/5hYR78k-w.png" alt="screely-1639573917553.png"  />
</p>
<h3 id="7-removebghttpswwwremovebg">7. <a href="https://www.remove.bg/" target="_blank" class="highlight-line">removebg</a></h3>
<p>You can remove the background of any image without a click. There are a lot of beautiful backgrounds to choose from.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639574493676/yX3NhOfWj.png" alt="screely-1639574482800.png"  />
</p>
<h3 id="8-coolorshttpscoolorsco">8. <a href="https://coolors.co/" target="_blank" class="highlight-line">Coolors</a></h3>
<p>The lightning-quick colour scheme generator! Create your ideal colour scheme or get inspired by thousands of stunning colour schemes.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639576693553/Mv2tCxiSk.png" alt="screely-1639576682616.png"  />
</p>
<h3 id="9-webflowhttpswebflowcom">9. <a href="https://webflow.com/" target="_blank" class="highlight-line">Webflow</a></h3>
<p>Webflow lets you create your own website without writing any code. More than 3,500,000 designers and teams use Webflow to build, collaborate on, and develop amazing websites on a totally visual canvas – no code required. It is a visual interface builder for digital interfaces. It essentially enables you to position and design parts of any digital interface.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639576948150/S22Y_9utg.png" alt="screely-1639576940938.png"  />
</p>
<h3 id="10-seo-site-checkuphttpsseositecheckupcom">10. <a href="https://seositecheckup.com/" target="_blank" class="highlight-line">SEO Site Checkup</a></h3>
<p>SEO Site Checkup performs a quick audit of your website, checking for proper tags and highlighting any errors that may arise. Analyze your SEO concerns in real-time. You can analyze and act on SEO reports.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639577212769/cPDFXW-oh.png" alt="screely-1639577204965.png"  />
</p>
<h3 id="11-typeformhttpswwwtypeformcom">11. <a href="https://www.typeform.com/" target="_blank" class="highlight-line">Typeform</a></h3>
<p>Make forms, surveys, and quizzes that people want to fill out. You can create integrations with various apps to enjoy your time-saving workflow. Free + Paid</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639577626023/FrnH6DRit.png" alt="screely-1639577615142.png"  />
</p>
<h3 id="12-mockuuups-studiohttpsmockuuupsstudio">12. <a href="https://mockuuups.studio/" target="_blank" class="highlight-line">Mockuuups Studio</a></h3>
<p>Your search for the ideal mockups has come to an end. Designers and marketers can drag and drop graphics into 1200+ mockups in seconds.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639578884276/eT3FF7UbtY.png" alt="screely-1639578871929.png"  />
</p>
<h3 id="13-extensiondevhttpsextensiondev">13. <a href="https://extension.dev/" target="_blank" class="highlight-line">extension.dev</a></h3>
<p>extension.dev is a low-code platform for building and deploying browser extensions that help you grow your business. Use their library of sample extensions and templates to get started right away, or start from scratch. Free</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639579795286/v2pYc4QsQ.png" alt="screely-1639579787004.png"  />
</p>
<h3 id="14-flaticonhttpswwwflaticoncom">14. <a href="https://www.flaticon.com/" target="_blank" class="highlight-line">flaticon</a></h3>
<p>Download free icons and stickers for your projects. Resources made by and for designers. PNG, SVG, EPS, PSD and BASE 64 formats. Access 6M+ vector icons &amp; stickers.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639579961292/G-6sXFUYR.png" alt="screely-1639579954187.png"  />
</p>
<h3 id="15-freepikhttpswwwfreepikcom">15. <a href="https://www.freepik.com/" target="_blank" class="highlight-line">freepik</a></h3>
<p>Find tons of graphic resources including Free Vectors, Stock Photos and PSD.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639580197830/_tGft6H5V.png" alt="screely-1639580189268.png"  />
</p>
<h3 id="16-landinpagefyihttpslandingpagefyiindexhtml">16. <a href="https://landingpage.fyi/index.html" target="_blank" class="highlight-line">landin&rsquo;page.fyi</a></h3>
<p>Build your best landing page with hand-picked examples and tools. A curated library of landing page resources. You&rsquo;ll have a up-to-date landing pages in no time.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639584539538/Zv6JP7TtG.png" alt="screely-1639581335519.png"  />
</p>
<h3 id="17-framerhttpswwwframercomfp">17. <a href="https://www.framer.com/fp/" target="_blank" class="highlight-line">Framer</a></h3>
<p>Create stunning interactive designs from start to finish all on the canvas. Design realistic websites and apps in minutes with pre-made interactive components, polished assets, layout tools, and more.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639585505868/Zl4_-fmfn.png" alt="screely-1639585442568.png"  />
</p>
<h3 id="18-tailshttpsdevdojocomtails">18. <a href="https://devdojo.com/tails" target="_blank" class="highlight-line">Tails</a></h3>
<p>Tails is the ultimate drag&rsquo;n drop page creator built for TailwindCSS. Over 220+ components to help you look pretty for your customers. Free + Paid</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639585656041/Mh3CQqHkA.png" alt="screely-1639585647430.png"  />
</p>
<h3 id="19-panelbearhttpspanelbearcom">19. <a href="https://panelbear.com/" target="_blank" class="highlight-line">Panelbear</a></h3>
<p>Panelbear helps you to measure your website&rsquo;s most important metrics, so you can deliver a great end user experience.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639585783544/aSZnmRQ6G.png" alt="screely-1639585774444.png"  />
</p>
<h3 id="20-copyaihttpswwwcopyai">20. <a href="https://www.copy.ai/" target="_blank" class="highlight-line">copy.ai</a></h3>
<p>With CopyAI’s automated creativity tools,
you can generate marketing copy in seconds.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639585969921/4HDhG0jwv.png" alt="screely-1639585961526.png"  />
</p>
<h3 id="21-poryhttpsporyio">21. <a href="https://pory.io/" target="_blank" class="highlight-line">PORY</a></h3>
<p>Create your app the way you like using drag and drop blocks. Connect your data from all your favourite apps. Control what users can view, create and modify with user groups.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639594064531/6Plx5DM89.png" alt="screely-1639594056888.png"  />
</p>
<h3 id="22-shoutouthttpsshoutoutso">22. <a href="https://shoutout.so/" target="_blank" class="highlight-line">Shoutout</a></h3>
<p>Increase your consumer base by emphasising why people trust you. Shoutout makes it simple to take your current social proof and transform it into a lovely &ldquo;Wall of Love.&rdquo; In less than 3 minutes, you can capture, curate, and publish a wall.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639594283814/pUreMBUec.png" alt="screely-1639594272618.png"  />
</p>
<h3 id="23-codahttpscodaiowelcome">23. <a href="https://coda.io/welcome" target="_blank" class="highlight-line">Coda</a></h3>
<p>Coda comes with building blocks—like tables and buttons—and time-saving templates, so your doc can grow and evolve with the needs of your team. No more ping-ponging between documents, spreadsheets, and niche workflow apps to get things done. Coda brings all of your words and data into one flexible surface.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639594582745/Cov2R2wnQ.png" alt="screely-1639594574771.png"  />
</p>
<h3 id="24-buildfirehttpsbuildfirecom">24. <a href="https://buildfire.com/" target="_blank" class="highlight-line">BuildFire</a></h3>
<p>The Most Powerful App Maker For iOS &amp; Android. BuildFire’s powerful and easy to use mobile app builder makes it so you can create mobile apps for iOS &amp; Android in a fraction of the time and cost.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639594710073/c0WH_eNvF.png" alt="screely-1639594695102.png"  />
</p>
<h3 id="25-bubblehttpsbubbleio">25. <a href="https://bubble.io/" target="_blank" class="highlight-line">bubble</a></h3>
<p>The best way to build web apps without code. Bubble is the most powerful no-code platform, empowering entrepreneurs to build production-ready web apps.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639594815486/Vii3I5Yz3.png" alt="screely-1639594807266.png"  />
</p>
<h3 id="26-pagelyhttpswwwpagelysite">26. <a href="https://www.pagely.site/" target="_blank" class="highlight-line">PAGELY</a></h3>
<p>Build beautiful websites In light speed. No coding required.
Launch websites from Notion, Google Sheets, GitHub or Airtable.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639595012287/yyY-q98bu.png" alt="screely-1639595001653.png"  />
</p>
<h3 id="27-buildboxhttpssignupbuildboxcom">27. <a href="https://signup.buildbox.com/" target="_blank" class="highlight-line">BUILDBOX</a></h3>
<p>Create 2D and 3D game without any coding. Try this awesome low code game development platform. Build any game from scratch or use templates.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639595280014/XJ8uzBGNu.png" alt="screely-1639595266472.png"  />
</p>
<h3 id="28-wicked-templateshttpswwwwickedtemplatescom">28. <a href="https://www.wickedtemplates.com/" target="_blank" class="highlight-line">Wicked Templates</a></h3>
<p>Find HTML landing page templates here. You can get Free and Premium themes, UI Kit&rsquo;s, templates and landing pages built with Tailwind CSS, HTML &amp; Next.js.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639595598609/AVvVKHPX_.png" alt="screely-1639595590089.png"  />
</p>
<h3 id="29-airtablehttpswwwairtablecom">29. <a href="https://www.airtable.com/" target="_blank" class="highlight-line">Airtable</a></h3>
<p>Airtable is a modern spreadsheet tool with database functionalities. It&rsquo;s straightforward and user-friendly, allowing anyone to rapidly establish a database. It&rsquo;s one of the numerous no-code tools that&rsquo;s gaining popularity.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639596019593/o_r5UmNVR.png" alt="screely-1639596010521.png"  />
</p>
<h3 id="30-splitbeehttpssplitbeeio">30. <a href="https://splitbee.io/" target="_blank" class="highlight-line">Splitbee</a></h3>
<p>The analytics platform helps you to track and optimize your online business. Follow incoming traffic in real-time. Uncover where users come from and what pages they visit. Dive deep into your ad campaigns and see what converts best.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639596155787/0vtELB9_4.png" alt="screely-1639596147000.png"  />
</p>
<h3 id="31-voiceflowhttpswwwvoiceflowcom">31. <a href="https://www.voiceflow.com/" target="_blank" class="highlight-line">Voiceflow</a></h3>
<p>Voiceflow is a conversation design tool that allows teams to create, develop, and launch voice and chat assistants. Voiceflow makes it simple to create contextual discussions. Leverage reusable components, robust context models, interaction model exports, and more all inside our fast &amp; beautiful drag-n-drop canvas.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639596362401/X3NMZhyZm.png" alt="screely-1639596349375.png"  />
</p>
<h3 id="32-notionhttpswwwnotionso">32. <a href="https://www.notion.so/" target="_blank" class="highlight-line">Notion</a></h3>
<p>Notion is one of the most popular productivity apps right now, with over a million users. It continues to expand every day, owing to the adaptability of Notion&rsquo;s robust databases, user-friendly pages, and performance enhancements. You can also create webpages using notion.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639596633959/rBgsARINh.png" alt="screely-1639596624427.png"  />
</p>
<h3 id="33-taskadehttpswwwtaskadecom">33. <a href="https://www.taskade.com/" target="_blank" class="highlight-line">Taskade</a></h3>
<p>If you want Notion, Zoom, and Slack in one place then you definitely have to use this. Map out your workflow, from ideas to action. Collaborate on projects and manage tasks.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639596957879/HHL4lQj0T.png" alt="screely-1639596949283.png"  />
</p>
<h3 id="34-glidehttpswwwglideappscom">34. <a href="https://www.glideapps.com/" target="_blank" class="highlight-line">Glide</a></h3>
<p>Create powerful apps and websites, without code. Using basic spreadsheet skills, you can make incredible things with Glide. Pick a spreadsheet and Glide instantly generates a real, working app or website to get you started.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639597085710/buKXhHAL8.png" alt="screely-1639597077629.png"  />
</p>
<h3 id="35-bumpahttpsgetbumpacom">35. <a href="https://getbumpa.com/" target="_blank" class="highlight-line">Bumpa</a></h3>
<p>Manage your business from your phone. Everything you need to sell online, offline and on social media. Track orders. Engage customers. Receive payments. Free Website.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639597274980/DKJEJe7Es.png" alt="screely-1639597262542.png"  />
</p>
<h3 id="36-magicpatternhttpswwwmagicpatterndesign">36. <a href="https://www.magicpattern.design/" target="_blank" class="highlight-line">MagicPattern</a></h3>
<p>Beautiful graphics with a total of ten tools. Effortlessly and instantly! In just a few clicks, you can create distinctive visuals for social media posts, landing sites, and branding. Then you may save them as photos or even code (SVG &amp; CSS). Create an infinite number of high-quality backdrop graphics for your customers and products.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639597442183/GEPrG3ZRp.png" alt="screely-1639597427099.png"  />
</p>
<h3 id="37-shopifyhttpswwwshopifyin">37. <a href="https://www.shopify.in/" target="_blank" class="highlight-line">Shopify</a></h3>
<p>Shopify is an e-commerce platform that enables anybody to open an online store and sell their goods. With Shopify POS, merchants can also sell their items in person. Without any programming skills, you can set up a Shopify store and get it up and operating in no time. Themes are installed with a click of a button, and customising them (depending on the theme and its accessible parameters) is as simple as filling out an online form.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639597686133/9duj-5vDd.png" alt="screely-1639597672214.png"  />
</p>
<h3 id="38-graphitehttpsgraphitespace">38. <a href="https://graphite.space/" target="_blank" class="highlight-line">Graphite</a></h3>
<p>Responsive, Pixel-Perfect, Code-Free. Make site design feel like a comfortable environment. Create pixel-perfect Web Pages, not just mockups, with familiar visual editing tools. Concentrate on the creative aspect, and forget the rest.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639597932532/3rbKuBYYH.png" alt="screely-1639597916091.png"  />
</p>
<h3 id="39-testimonialhttpstestimonialto">39. <a href="https://testimonial.to/" target="_blank" class="highlight-line">Testimonial</a></h3>
<p>Easily get video testimonials from your customers. It is difficult it is to get video testimonials. As a result, Testimonial is there for you. You don&rsquo;t require a developer or website hosting to collect video testimonials from your consumers in minutes.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639598165560/kPIX6Vgt_.png" alt="screely-1639598158194.png"  />
</p>
<h3 id="40-carrdhttpscarrdco">40. <a href="https://carrd.co/" target="_blank" class="highlight-line">Carrd</a></h3>
<p>Carrd is a site-building platform similar to SquareSpace or WordPress that has grown in popularity over the last year. Carrd distinguishes itself from other websites by specializing in one-page websites. Almost all of its capabilities are free to use, and it has a wide range of applications.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639598413517/HWzQBrWcp.png" alt="screely-1639598401311.png"  />
</p>
<h3 id="41-ifttthttpsiftttcom">41. <a href="https://ifttt.com/" target="_blank" class="highlight-line">IFTTT</a></h3>
<p>IFTTT is short for If This Then That, and is the best way to integrate apps, devices, and services. IFTTT makes it possible for devices, services, and apps to interact in new and powerful ways. IFTTT was based on the idea that everything works better when it&rsquo;s done jointly. For anybody wanting to design a smart home or automate their life, tech incompatibility has become a challenge. It&rsquo;s simple with IFTTT.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639598725228/ITwdxlHqu.png" alt="screely-1639598605485.png"  />
</p>
<h3 id="42-nocode-videohttpswwwnocodevideo">42. <a href="https://www.nocode.video/" target="_blank" class="highlight-line">Nocode Video</a></h3>
<p>Explore top Nocode Videos from around the web and learn about new tech. Find tutorials related to Nocode.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639599449648/YKACNFsNC.png" alt="screely-1639599439018.png"  />
</p>
<h3 id="43-memberspacehttpswwwmemberspacecom">43. <a href="https://www.memberspace.com/" target="_blank" class="highlight-line">MemberSpace</a></h3>
<p>With just a few clicks, you can make any section of your website members-only. Simply restrict access to any page of your website, then decide how much visitors will pay to get access. Create memberships for whatever you desire, including courses, video lessons, member directories, and more, all while maintaining complete control over the design.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639599622381/LbvuPe7wV.png" alt="screely-1639599568882.png"  />
</p>
<h3 id="44-nocoderyhttpsdevnocoderycom">44. <a href="https://dev.nocodery.com/" target="_blank" class="highlight-line">NoCodery</a></h3>
<p>Nocodery is a job board for nocoders, created by nocoders for nocoders. Nocodery collects nocode job offers and jobs from a variety of sources so you don&rsquo;t have to search for them manually on job boards, saving you time!</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639599877237/ExEReF5kA.png" alt="screely-1639599868920.png"  />
</p>
<h3 id="45-codelesshowhttpscodelesshow">45. <a href="https://codeless.how/" target="_blank" class="highlight-line">Codeless.how</a></h3>
<p>Codeless is a website offering information for anyone who runs an internet business and wishes to automate routine operations without writing code. You&rsquo;ll learn how to use technologies like Zapier, Webflow, and Airtable to automate marketing, sales, billing, and other activities.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639600090619/9iuWJNCpC.png" alt="screely-1639600075265.png"  />
</p>
<h3 id="46softrhttpswwwsoftrio">46.<a href="https://www.softr.io/" target="_blank" class="highlight-line">Softr</a></h3>
<p>Softr is a fantastic online development tool that allows users to create code-free websites, portals, and web apps in only ten minutes on Airtable. Using Zapier, You may integrate application logic with external services or interconnect multiple sites.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1639600678403/8d-p2c3n4.png" alt="screely-1639600669490.png"  />
</p>
<p>People have been able to use computers without ever writing a line of code for decades. With the proliferation of no-code technologies, a comparable revolution is taking place for those who wish to write software. While the no-code revolution is still in its early stages, the business is expected to be worth more than $43 billion by 2023. The current boom, on the other hand, is the consequence of decades of hard labour and progress that cannot be overlooked.</p>
<h4 id="if-you--my-content-connect-me-on--twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on  <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>All Resources To Help You Start Your Open-Source Journey: Open Source Gallery</title><link>https://mranand.com/blogs/all-resources-to-help-you-start-your-open-source-journey-open-source-gallery/</link><pubDate>Sat, 01 Jan 2022 17:37:05 +0530</pubDate><guid>https://mranand.com/blogs/all-resources-to-help-you-start-your-open-source-journey-open-source-gallery/</guid><description>Do you want to start your open source journey? Don&amp;#39;t know where to start? Difficulty in finding suitable projects according to your tech stack? Then this article is for you. In this article, I am going to discuss a resource gallery that I curated to help beginners get into the open-source world. Tutorials, Docs, Projects, and Communities to Get You Started.</description><content:encoded><![CDATA[<p>Do you want to start your open source journey? Don&rsquo;t know where to start? Difficulty in finding suitable projects according to your tech stack? Then this article is for you. In this article, I am going to discuss a resource gallery that I curated to help beginners get into the open-source world.</p>
<h1 id="open-source-galleryhttpsgithubcomastrodevilopen-source-gallery"><a href="https://github.com/Astrodevil/Open-Source-Gallery" target="_blank" class="highlight-line">Open Source Gallery</a></h1>
<h3 id="about">About❓</h3>
<p>Are you a beginner? Wants to start open-source? Don&rsquo;t know how, where, why to start?</p>
<p>You are welcome! You are in right place.😊</p>
<p>Open-Source-Gallery provides you with all the resources needed to become a good open-sourcer.</p>
<p>The motive🎯 of this project is to help new learners like you to get familiar with the world of open-source.</p>
<h3 id="contents">Contents🔥</h3>
<p>Every Learner has different preferences, some find docs are easy to understand and learn from there, some prefer video. I have taken care of all that while curating these resources.</p>
<p>Even after being willing to start, newbies find it difficult to find projects and communities I have taken care of that.</p>
<p>Open Source Gallery includes:</p>
<ul>
<li>Videos📹</li>
<li>Articles📝</li>
<li>Projects🦾</li>
<li>Programs and Internships Opportunities☕</li>
<li>Communities🔥</li>
<li>Key Peoples🧑‍💻</li>
</ul>
<h3 id="what-else">What Else⚡</h3>
<p>I have also included some <a href="https://github.com/Astrodevil/Open-Source-Gallery#more-resource-gallery" target="_blank" class="highlight-line">other resources</a> and resources gallery apart from open source. Hope it will help you in your learning.</p>
<p>This resource gallery was 1st curated on Notion but now it is hosted on GitHub. If you find this helpful, don&rsquo;t forget to give it a <a href="https://github.com/Astrodevil/Open-Source-Gallery" target="_blank" class="highlight-line">⭐</a> on GitHub.</p>
<p>Happy learning.👍</p>
<p>So, What are you waiting for? <a href="https://astrodevil.github.io/Open-Source-Gallery/" target="_blank" class="highlight-line">Start here</a></p>
<h3 id="final-words">Final Words✅</h3>
<p>Open Source Gallery is made with a view to helping everyone, It will be constantly updated with new and valuable resources. So you all are welcome to add more resources to the <a href="https://github.com/Astrodevil/Open-Source-Gallery" target="_blank" class="highlight-line">repository</a> and share it with everyone out there who is going to start open-source in 2022.</p>
<p>Don&rsquo;t forget to give it a <a href="https://github.com/Astrodevil/Open-Source-Gallery" target="_blank" class="highlight-line">⭐</a> on GitHub.</p>
<h4 id="if-you--my-content-connect-me-on--twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on  <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>25 Must-Visit Killer Websites For Developers</title><link>https://mranand.com/blogs/25-must-visit-killer-websites-for-developers/</link><pubDate>Sat, 01 Jan 2022 17:31:05 +0530</pubDate><guid>https://mranand.com/blogs/25-must-visit-killer-websites-for-developers/</guid><description>There are so many websites to make the work of developers easier. Everyone doesn&amp;#39;t know all. In this article, we will see 25 Must-Visit Killer Websites For Developers. 90% of developers don’t know about these websites</description><content:encoded><![CDATA[<p>There are so many websites to make the work of developers easier. Everyone doesn&rsquo;t know all. In this article, we will see <strong>25 Must-Visit Killer Websites For Developers</strong>.</p>
<h3 id="1-devdocshttpsdevdocsio">1. <a href="https://devdocs.io/" target="_blank" class="highlight-line">DevDocs</a></h3>
<p>DevDocs brings together numerous API documentation in a single, searchable interface. You will find docs related to various programming languages, technologies in one place.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638384967813/utLSXf2-U.png" alt="screely-1638384035935.png"  />
</p>
<h3 id="2-raysohttpsrayso">2. <a href="https://ray.so/" target="_blank" class="highlight-line">ray.so</a></h3>
<p>This website allows you to take beautiful screenshots of codes. It also has a dark mode and some preloaded themes for different programming languages. You can also use its VS Code extension.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638385311659/82S035d0k.png" alt="screely-1638385296060.png"  />
</p>
<h3 id="3-poetsohttpspoetso">3. <a href="https://poet.so/" target="_blank" class="highlight-line">Poet.so</a></h3>
<p>This site is useful for developers who wish to post photos of their tweets on social media. Website transforms your tweet into a beautiful and editable design.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638385530712/GsADMkksb.png" alt="screely-1638385516106.png"  />
</p>
<h3 id="4-roadmapshhttpsroadmapsh">4. <a href="https://roadmap.sh/" target="_blank" class="highlight-line">roadmap.sh</a></h3>
<p>This website provides roadmaps, guidelines, and other educational content to assist developers in choosing a path and directing their learning. It is very helpful for a beginner as well as a learner who needs guidance.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638385854363/V8bW_gzx1.png" alt="screely-1638385839901.png"  />
</p>
<h3 id="5-lambdatesthttpswwwlambdatestcom">5. <a href="https://www.lambdatest.com/" target="_blank" class="highlight-line">LambdaTest</a></h3>
<p>LambdaTest is a cloud-based cross-browser testing platform that lets you test web applications on over 2000 different browsers, operating systems, and devices. LambdaTest allows you to test cross-browser compatibility both manually and automatically.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638386119439/mDXT7rVtt.png" alt="screely-1638386105526.png"  />
</p>
<h3 id="6-dailydevhttpsappdailydev">6. <a href="https://app.daily.dev/" target="_blank" class="highlight-line">daily.dev</a></h3>
<p>It is a platform where you can find so many good articles to read daily. It shows the best articles from various platforms directly in your feed. Stay updated with quality content from various platforms directly into your browser by using its extension.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638386504039/glWhXS_nQ.png" alt="screely-1638386457871.png"  />
</p>
<h3 id="7-showwcasehttpswwwshowwcasecom">7. <a href="https://www.showwcase.com/" target="_blank" class="highlight-line">Showwcase</a></h3>
<p>Showwcase is a new social media website specially for people who code connect, build community, and find new opportunities. It is a LinkedIn like platform but only focused on developers. You can join and <a href="https://www.showwcase.com/astrodevil" target="_blank" class="highlight-line">follow me</a> there.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638386870736/KMtvp18LF.png" alt="screely-1638386858754.png"  />
</p>
<h3 id="8-css-trickshttpscss-trickscom">8. <a href="https://css-tricks.com/" target="_blank" class="highlight-line">CSS-TRICKS</a></h3>
<p>You can master your web development skills by learning every basics about CSS from this website. If you didn&rsquo;t already know, CSS is what makes pages on the web look beautiful.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638387360963/CZ40Lwai0.png" alt="screely-1638387302168.png"  />
</p>
<h3 id="9-medusahttpswwwmedusajscom">9. <a href="https://www.medusajs.com/" target="_blank" class="highlight-line">Medusa</a></h3>
<p>An open-source Shopify alternative. Medusa is an open-source headless commerce engine that is fast and customizable. It&rsquo;s Free.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638387765631/u99VAO5fh.png" alt="screely-1638387753072.png"  />
</p>
<h3 id="10-smartmockupshttpssmartmockupscom">10. <a href="https://smartmockups.com/" target="_blank" class="highlight-line">SMARTMOCKUPS</a></h3>
<p>Why give your time learning how to use Photoshop. Smartmockups allow you to generate gorgeous high-resolution mockups straight in your browser and across numerous devices using a single interface. The quickest web-based mockup tool available, No prior experience or abilities are required, and the library of professional mockups is always growing.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638388146151/XYY-Hey10.png" alt="screely-1638388121263.png"  />
</p>
<h3 id="11-code-beautifyhttpscodebeautifyorg">11. <a href="https://codebeautify.org/" target="_blank" class="highlight-line">Code Beautify</a></h3>
<p>Make your source code more beautiful and easy to read using code to beautify its AI technology will make your source code more attractive and easy to read.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638388669184/LkNccoLNs.png" alt="screely-1638388657726.png"  />
</p>
<h3 id="12-overapihttpsoverapicom">12. <a href="https://overapi.com/" target="_blank" class="highlight-line">overAPI</a></h3>
<p>For all developers, OverAPI is one of the most beautiful and useful websites. This website has cheatsheets for the majority of programming languages. Take a look at it right now.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638388599099/SWli6eqLd.png" alt="screely-1638388584887.png"  />
</p>
<h3 id="13-responsivelyhttpsresponsivelyapp">13. <a href="https://responsively.app/" target="_blank" class="highlight-line">Responsively</a></h3>
<p>This is an open-source website that speeds up the development of web apps by 5 times. All target screens are displayed side by side in a single window. Reduces the time it takes to develop!</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638388914941/fzDk1EbbW.png" alt="screely-1638388903814.png"  />
</p>
<h3 id="14-color-hunthttpscolorhuntco">14. <a href="https://colorhunt.co/" target="_blank" class="highlight-line">Color Hunt</a></h3>
<p>Colorhunt is a website that allows you to select gorgeous colour palettes. Web designers will find it very beneficial to choose beautiful and appealing colours, as well as to accept colour recommendations from other artists and art projects.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638389100098/2g69Ma1ju.png" alt="screely-1638389088000.png"  />
</p>
<h3 id="15-carbonhttpscarbonnowsh">15. <a href="https://carbon.now.sh/" target="_blank" class="highlight-line">Carbon</a></h3>
<p>This website will help you to create and share beautiful images of your source codes. It also allows you to make changes to the photographs. You should give it a go right now.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638389339711/JzN9a1yTi.png" alt="screely-1638389329198.png"  />
</p>
<h3 id="16-meta-tagshttpsmetatagsio">16. <a href="https://metatags.io/" target="_blank" class="highlight-line">Meta Tags</a></h3>
<p>It is a website tag generator that also allows you to update and experiment with your content before seeing how it will appear on Google, Facebook, LinkedIn, and other social media sites.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638389558917/vBV-rOHip.png" alt="screely-1638389538922.png"  />
</p>
<h3 id="17-profile-pic-makerhttpspfpmakercom">17. <a href="https://pfpmaker.com/" target="_blank" class="highlight-line">Profile Pic Maker</a></h3>
<p>This website creates a professional and beautiful profile for each photo in your Web developer portfolio. As a developer, you will be exposed to social media. You only need to upload any of your images, and it will edit and enhance them. Give it a go right now.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638389794694/Ywlpmxb0a.png" alt="screely-1638389786334.png"  />
</p>
<h3 id="18-small-dev-toolshttpssmalldevtools">18. <a href="https://smalldev.tools/" target="_blank" class="highlight-line">Small Dev Tools</a></h3>
<p>This website offers a variety of free developer tools, including encoders/decoders, HTML/CSS/Javascript formatters, minifies, fake or test data generators, and more. It also allows you to share codes.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638390009000/3vdcuU143.png" alt="screely-1638389956512.png"  />
</p>
<h3 id="19-resumeiohttpsresumeio">19. <a href="https://resume.io/" target="_blank" class="highlight-line">resume.io</a></h3>
<p>This website allows you to create a quality resume. It will help you to create a professional resume by providing you with well-tested templates. Give it a Try.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638390270548/U8e1MzxUy.png" alt="screely-1638390259749.png"  />
</p>
<h3 id="20-codepenhttpscodepenio">20. <a href="https://codepen.io/" target="_blank" class="highlight-line">CODEPEN</a></h3>
<p>CodePen is a web-based development platform that allows users to modify front-end languages such as HTML, CSS, and JavaScript without having to install any software. The nicest aspect is that the findings are visible in real-time, making troubleshooting easier. Developers and designers can also exchange code samples (known as pens) with the rest of the world.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638390510290/Z11dY_2Vv.png" alt="screely-1638390500404.png"  />
</p>
<h3 id="21-storytalehttpsstorytaleio">21. <a href="https://storytale.io/" target="_blank" class="highlight-line">Storytale</a></h3>
<p>Storytale is a website that had collections of illustrations that Make your project eye-catching with awesome characters. It can be used personally and commercially. This is a helpful website for web designers. Get High-class assets for web and mobile projects.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638390858191/-tZZB4fvS.png" alt="screely-1638390848756.png"  />
</p>
<h3 id="22-readmesohttpsreadmeso">22. <a href="https://readme.so/" target="_blank" class="highlight-line">readme.so</a></h3>
<p>This website allows you to create project README very easily. Its simple editor helps you to quickly add and customize all the sections you need for your project&rsquo;s README. You can use this to create documentation of your open-source projects quickly.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638391156722/7CiKyNZNv.png" alt="screely-1638391148567.png"  />
</p>
<h3 id="23-peppertypehttpswwwpeppertypeai">23. <a href="https://www.peppertype.ai/" target="_blank" class="highlight-line">Peppertype</a></h3>
<p>Peppertype is a new tool that helps in automating the content production and ideation process. It analyses your business operations, understands your brand and target audience, and then creates fresh content for you using superior machine learning and artificial intelligence. If you are a developer creating content regularly, then this is for you.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638391381010/rY_Fyi21N.png" alt="screely-1638391370901.png"  />
</p>
<h3 id="24-synthesiahttpswwwsynthesiaio">24. <a href="https://www.synthesia.io/" target="_blank" class="highlight-line">synthesia</a></h3>
<p>Synthesia helps you to create AI-based videos in over 50+ languages. You don&rsquo;t need a camera, microphone, or real face to create video content. You just need to upload your script and you will get an AI video.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638391829724/zFvA9ViJg.png" alt="screely-1638391816957.png"  />
</p>
<h3 id="25-programmer-humorhttpsprogrammerhumorio">25. <a href="https://programmerhumor.io/" target="_blank" class="highlight-line">Programmer Humor</a></h3>
<p>Even developers also need entertainment. You can visit this website for various memes and jokes related to programming and developers. Have Fun.</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1638392080280/sDiDjjAgL.png" alt="screely-1638392067037.png"  />
</p>
<p><strong>Bonus Website</strong>: I used screenshots taken by <strong><a href="https://www.screely.com/" target="_blank" class="highlight-line">Screely</a></strong> in this Article.</p>
<h4 id="if-you--my-content-connect-me-on--twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on  <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>How NOT to contribute to Open Source on GitHub: Tips For Beginners</title><link>https://mranand.com/blogs/how-not-to-contribute-to-open-source-on-github-tips-for-beginners/</link><pubDate>Sat, 01 Jan 2022 17:29:05 +0530</pubDate><guid>https://mranand.com/blogs/how-not-to-contribute-to-open-source-on-github-tips-for-beginners/</guid><description>While maintaining some projects on GitHub during Hacktoberfest 2021, I came across many new open source contributors. They are just starting their open-source journey and making mistakes. In the beginning, making mistakes is not a bad thing. But, correctly contributing to open-source projects is also very important. In this article, I am going to discuss some tips on - How Not to contribute to Open-Source on GitHub.</description><content:encoded><![CDATA[<p>While maintaining some projects on GitHub during Hacktoberfest 2021, I came across many new open source contributors. They are just starting their open-source journey and making mistakes. In the beginning, making mistakes is not a bad thing. But, correctly contributing to open-source projects is also very important.</p>
<p>In this article, I am going to discuss some tips on - <strong>How Not to contribute to Open-Source on GitHub</strong>.</p>
<h2 id="understanding-projects">Understanding Projects</h2>
<p>Understanding of project like how folders are arranged? how files are linked? which tech stack is used? is the most important thing before raising an issue or making a pull request in any project on GitHub.</p>
<p><strong>Don&rsquo;t</strong> make pull requests or raise issues without reading contributing guidelines of any projects. Always read the <a href="https://github.com/ZeroOctave/ZeroOctave-Javascript-Projects/blob/main/README.md" target="_blank" class="highlight-line">README.md</a> file of projects where everything related to the project is written most of the time. Also, clone the project in your machine and go through every file once to understand its working.</p>
<h2 id="raising-issue">Raising Issue</h2>
<p>If you want to solve any bug or to contribute some lines of code to a project then you have to raise an issue. But always check the previous issues raised by anyone else to confirm, if anyone else is working or described the same issue that you gonna solve.</p>
<p><strong>Don&rsquo;t</strong> raise 1 or 2-word issue, that doesn&rsquo;t make sense to anyone else. Always remember to add proper details/context in the issue because the issue is like a chain of conversation related to changes you or anyone else wants to make in the project. Write a proper description and proper title to the issue also add screenshots, links, information, or an approach to solve that issue to proper understanding. Make issues such that project maintainers or contributors understand your views and suggestions quickly.</p>
<p>✅<strong>Do this</strong>
<img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1635350929799/bnTb0CZty.png" alt="Screenshot 2021-10-27 213749.png"  />
</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1635351083473/vY7qeS-Dt.png" alt="Screenshot 2021-10-27 214055.png"  />
</p>
<p>❌<strong>Don&rsquo;t do this</strong>
<img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1635351300986/61UUlutnr.png" alt="Screenshot 2021-10-27 214444.png"  />
</p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1635351839443/wPLy9K_fV.png" alt="Screenshot 2021-10-27 215344.png"  />
</p>
<h2 id="making-pull-request">Making Pull Request</h2>
<p>Your PR should do one thing. Always make a pull request for one part or section so that it would be easier for reviewers and maintainers to merge your pull request. If you are solving multiple issues in a project then open multiple PRs.</p>
<p><strong>Don&rsquo;t</strong> make multiple PRs in one, this is confusing sometimes and also delayed the merging process. Let&rsquo;s assume you are making a PR for a new feature in the project and you also found a bug related to a different part of the same project. Don&rsquo;t fix that bug in the same PR. Because sometimes the other changes that gonna add value to the project get delayed due to multiple PRs in one. Make PRs small and on point, which will help your pull request getting merged easily.</p>
<p><strong>Don’t</strong> open a PR like this:</p>
<ul>
<li>Fixes bug #343</li>
<li>Adds new linting rules</li>
<li>Includes feature #466</li>
</ul>
<p>Attaching screenshots or some information related to your changes in the PR description is also very good practice. This will help the maintainer or reviewer to differentiate between changes.</p>
<p>✅<strong>Do this</strong></p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1635357710905/HhuZ6VeLi.png" alt="Screenshot 2021-10-27 233035.png"  />
</p>
<p>❌<strong>Don&rsquo;t do this</strong></p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1635357822392/sJpdNHose.png" alt="Screenshot 2021-10-27 233332.png"  />
</p>
<h2 id="approvals-and-dead-prs">Approvals and Dead PRs</h2>
<p><strong>Don&rsquo;t</strong> start working on any project before the maintainer gives you a go-ahead or assigned that issue to you. Don&rsquo;t open pull requests immediately. Wait for the maintainers approval</p>
<ul>
<li>If the issue is already open and not assigned to anyone, ask maintainers if you can work on that.</li>
<li>Start work on your PR.</li>
<li>Don&rsquo;t ask maintainers to assign you an issue that is already assigned to someone else.</li>
</ul>
<p>Sometimes you get confused during working on PR maybe you lost interest or whatever reasons please don&rsquo;t leave that open PR as it is, make sure to close that <strong>dead PR</strong>. The maintainer may not want to close it because they don&rsquo;t want to upset you. It neither looks good for the project nor to you. You can always reopen the Pull request if you want to work on that in the future.</p>
<h2 id="be-meaningful">Be Meaningful</h2>
<p>Every contribution is valuable. If something is broken in the project like an important link is not working in the documentation that will be needed to be fixed. But if you just change an emoji from ⚡ to 🚀, this is not much valuable.</p>
<p><strong>Don&rsquo;t</strong> break consistency.</p>
<ul>
<li>Every time make sure to follow proper file order and directory to commit changes.</li>
<li>Removing semicolons, adding spaces, or making text bold in the project that doesn&rsquo;t prefer them.</li>
</ul>
<h2 id="hassling-maintainers-to-merge">Hassling Maintainers To Merge</h2>
<p>When you create any pull request or issue I know you get excited. Maintainers will get a notification that you raised or crested. You don&rsquo;t need to add additional comments and tag them. If it&rsquo;s taking time, give them a friendly call in comments that will be fine.</p>
<p><strong>Don&rsquo;t</strong> hassle them on DMs on Twitter, Discord, Linkedin, or any other socials by sending them links of your issue or PRs. They are getting notifications from projects they maintain and you are adding more notifications. This will create more confusion for maintainers. Remember, most of these people maintaining projects are from different time zones. Many of them are maintaining open-source project in addition of their work. Be patience! You can give them a friendly reminder after 1 week or such.</p>
<p>✅<strong>Do this</strong></p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1635362084267/UWbqUg1jJ.png" alt="Screenshot 2021-10-28 004433.png"  />
</p>
<p>❌<strong>Don&rsquo;t do this</strong></p>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1635362312519/6ML0tiARb.jpeg" alt="img.jpeg"  />
</p>
<h3 id="references">References</h3>
<p><a href="https://youtu.be/ExFCwFPTsE0" target="_blank" class="highlight-line">Eddie Jaoude</a></p>
<h4 id="if-you--my-content-connect-me-on--twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on  <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>Are You A Coder? Here Are 20 Top Tips From The Coding Community</title><link>https://mranand.com/blogs/are-you-a-coder-here-are-20-top-tips-from-the-coding-community/</link><pubDate>Sat, 01 Jan 2022 16:52:05 +0530</pubDate><guid>https://mranand.com/blogs/are-you-a-coder-here-are-20-top-tips-from-the-coding-community/</guid><description>Learning to code is an amazing thing. How you can code something interesting and then view its fascinating outcomes. But Doing it in the right way is also very important. While scrolling YouTube I found a video where some developers and community leaders were sharing their tips about programming. In this Article, I am going to share 20 Top Tips From The Coding Community</description><content:encoded><![CDATA[<p>Learning to code is an amazing thing. How you can code something interesting and then view its fascinating outcomes. But Doing it in the right way is also very important. While scrolling YouTube I found a video where some developers and community leaders were sharing their tips about programming.</p>
<p>In this Article, I am going to share <strong>20 Top Tips From The Coding Community</strong></p>
<h3 id="1-use-google">1. Use Google</h3>
<p>The developers&rsquo; best friend is Google. I don&rsquo;t know who you are or how much experience you have, no one can remember everything. Learning how to google things itself is a required skill every developer should have. Finding resources to learn or to fix bugs google is going to help you with everything related to your coding journey. Googling is an Art! Learn it.</p>
<h3 id="2-pick-tech-you-like">2. Pick Tech You Like</h3>
<p>Choose something you like. JavaScript is trending now in web development, if you like it Great!. If you are not intrested in web development fine! choose App development or some other tech. just make sure to learn something you like.</p>
<h3 id="3-learn--code">3. Learn &amp; Code</h3>
<p>Always learn &amp; code at the same time. This will help you to understand concepts properly. If you are learning something solve some questions related to the concepts.</p>
<h3 id="4-support-other-learners">4. Support Other Learners</h3>
<p>If your classmates or someone is learning something or creating something. Help them with your knowledge, Support them. Supporting someone will going to help you to become a good developer. Talks about the things they did great, talk about the things they need to work upon. Don&rsquo;t humiliate by saying every time: hey you are wrong! this sucks! that&rsquo;s bad, Instead talk about it and explain the solution.</p>
<h3 id="5-write-out-your-problem">5. Write Out Your problem</h3>
<p>Suppose you have a coding issue, when you write it out and started explaining it to someone you end up explaining it in your own brain. Sometimes You already figures out the answer before you even going to ask someone by seeing what you have written. So write out your problems before code.</p>
<h3 id="6-build--practice">6. Build &amp; Practice</h3>
<p>If you are learning to code, practice is the most important thing to follow across the learning period. Don&rsquo;t stuck in tutorial hell. Learn and practice to get better.
Suppose you are learning web development, create mini-projects after clearing every concept, and implement it.</p>
<h3 id="7-go-at-your-own-pace">7. Go At Your Own Pace</h3>
<p>This is not a competition. If it takes you a long time to understand concepts, it&rsquo;s OK. Don&rsquo;t compare yourself with others, everyone&rsquo;s mind is different. At the end of the day, the only thing matters are what you learned. Go Slowly! Believe in Yourself!</p>
<h3 id="8-error-messagebugs">8. Error Message/Bugs</h3>
<p>Error messages and bugs are your friends now. Get comfortable with these while coding, it&rsquo;s a part of the job. It&rsquo;s going to help you a lot.</p>
<h3 id="9-take-small-breaks">9. Take Small Breaks</h3>
<p>Always take small breaks between coding sessions, get up from the chair drink water. walk for 5 minutes, see outside the window, and get relaxed. this will boost your productivity.</p>
<h3 id="10-dealing-with-imposter-syndrome">10. Dealing With Imposter Syndrome</h3>
<p>Remember that no one knows everything and you are not expected to know everything. So, admit when you don&rsquo;t completely understand something so that others around you can help you and celebrates your win. No matter how big or small they are, when you look back at the time when you first started learning. You are going to see how far you came, Never give up.</p>
<h3 id="11-fun-based-learning">11. Fun Based Learning</h3>
<p>When you code something and going to deploy it remember programming should always be fun. Create small side projects to learn things. Maybe a small game you made helps you to understand the concept faster. when you start enjoying the coding process, you will be going to be a good developer.</p>
<h3 id="12-timebox-when-you-are-stuck">12. Timebox When You Are Stuck</h3>
<p>If you gonna struggle with a problem, give yourself some time like 30 minutes or 1 hour but in limit before going to ask someone or to take help. Neither ask early nor stuck for too long.</p>
<h3 id="13-focus-on-small-things">13. Focus On Small Things</h3>
<p>Improve yourself every day, fix a time slot to code every day. like you decided to code for 3 hours daily, so follow this. Don&rsquo;t miss these 3 hours. Coding daily will boost your confidence as well as problem-solving skills. These small things matter. Small things make huge differences. Assess your silly mistakes while doing code to improve yourself.</p>
<h3 id="14-explore--be-passionate">14. Explore &amp; Be Passionate</h3>
<p>Always keep exploring new things in the programming world and be passionate about what you are doing or learning. New things always keep coming, find and know about it, keep yourself updated with the latest tools and trends in the coding world. Mastering what you learn but keeping knowledge of changing tech is equally important.</p>
<h3 id="15-real--desired-projects">15. Real &amp; Desired Projects</h3>
<p>Making small projects while learning is a good thing. But when it comes to jobs having a better side project will give you an edge over others. Just make a project which you want to see in this world, give it a try make your imagination real. Failing is OK, at least you should try.</p>
<h3 id="16-find-a-mentor-and-work-with-experienced-peoples">16. Find A Mentor and Work With Experienced Peoples</h3>
<p>Having a good mentor is all you need to grow in the industry or to come out of problems by following the right path. Mentors can guide you to what you need to learn and what not to.</p>
<p>Working with experienced people helps you to learn from their experiences. while working they can share some insights which will make your life easier in the coding world.</p>
<h3 id="17-find-your-community">17. Find Your Community</h3>
<p>Community is everything in this industry. Connecting with people of similar interests and fields is all you need to get better. Having in some good communities is the best thing you can do to grab opportunities and to take help and do help.</p>
<h3 id="18-physical-and-mental-health">18. Physical and Mental Health</h3>
<p>Staying fit is a huge challenge nowadays. Sitting on a chair for long durations while coding can make you unhealthy, so take proper care of your health. It&rsquo;s most important. Exercise daily! Drink lots of water! Walk around the city! Eat healthily and use the proper desk setup for coding. Do meditation in the morning and wash your eyes with cold water thrice a day. Eyes are most exposed to bright desktop screens.</p>
<h3 id="19-document-and-share-experiences">19. Document And Share Experiences</h3>
<p>No matter what you learned or achieved, document your journey. Sometimes during your learning process, you got stuck but get the solution after some time. Do share it with the world by writing blogs or making videos. Your experiences gonna help others.</p>
<h3 id="20-contribute-to-open-source">20. Contribute To Open-Source</h3>
<p>Because most coders overlook open-source contributions, I&rsquo;m writing this in the final section of this article. You&rsquo;ve studied everything, but how will you use your knowledge to work on a vast codebase if you don&rsquo;t understand how real-world projects work? It&rsquo;s also critical to have a thorough understanding of real-world software and projects. Start contributing to open source to help you achieve your goals.</p>
<h3 id="some-bonus-tips">Some Bonus Tips</h3>
<ul>
<li><strong>Learn In Public:</strong> Post your daily learning on Twitter or LinkedIn. This will help you as well as others. By doing this, you are making yourself more open to job opportunities.</li>
<li><strong>Use Stack Overflow:</strong> If You get stuck in coding problems and find solutions later share it there so that anyone facing the same issue in the future can take help from it.</li>
<li><strong>Some Apps For Student Developers:</strong>  Gaming apps to social media apps, everyone is using different apps. But having some proper apps to increase your productivity and boost your coding journey is also important. So Read My Article  <a href="https://astrodevil.hashnode.dev/some-apps-for-student-developer" target="_blank" class="highlight-line">here</a>  about some suggestions.</li>
</ul>
<h4 id="if-you--my-content-connect-me-on--twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on  <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>Some Cool GitHub Actions You Won't Believe Exists</title><link>https://mranand.com/blogs/some-cool-github-actions-you-wont-believe-exists/</link><pubDate>Fri, 31 Dec 2021 17:50:05 +0530</pubDate><guid>https://mranand.com/blogs/some-cool-github-actions-you-wont-believe-exists/</guid><description>With GitHub Actions, you can automate, customize, and execute your software development workflows right in your repository. You may find, create, and distribute actions for any job you want to do, including CI/CD, and combine actions in a fully customized workflow. In this Article, I am going to discuss Some Cool GitHub Actions You Won&amp;#39;t Believe Exists.</description><content:encoded><![CDATA[<p>With GitHub Actions, you can automate, customize, and execute your software development workflows right in your repository. You may find, create, and distribute actions for any job you want to do, including CI/CD, and combine actions in a fully customized workflow.</p>
<p>In this Article, I am going to discuss <strong>Some Cool GitHub Actions You Won&rsquo;t Believe Exists</strong>.</p>
<h2 id="for-bloggers">For Bloggers</h2>
<ul>
<li>
<p><a href="https://github.com/marketplace/actions/hashnode-blog" target="_blank" class="highlight-line">Hashnode Blog</a>: You can use this GitHub Action to fetch &amp; display your latest blog posts From Hashnode on your profile or project README.</p>
</li>
<li>
<p><a href="https://github.com/marketplace/actions/medium-post" target="_blank" class="highlight-line">Medium Post</a>: You can use this GitHub Action for posting a markdown post to Medium.</p>
</li>
<li>
<p><a href="https://github.com/marketplace/actions/post-to-medium-action" target="_blank" class="highlight-line">Post to Medium Action</a>: This GitHub Action allows you to automatically create a new Medium post with Markdown or HTML.</p>
</li>
<li>
<p><a href="https://github.com/marketplace/actions/publish-to-dev-to" target="_blank" class="highlight-line">Publish to dev.to</a>: You can use this GitHub Action to publish markdown files as articles on dev.to platform, with assets hosted on GitHub.</p>
</li>
<li>
<p><a href="https://github.com/marketplace/actions/theactiondev" target="_blank" class="highlight-line">TheActionDev</a>: This GitHub Action allows you to write &amp; maintain dev.to articles without touching the dev.to UI.</p>
</li>
</ul>
<h2 id="for-content-creators">For Content Creators</h2>
<ul>
<li>
<p><a href="https://github.com/marketplace/actions/youtube-videos-as-posts" target="_blank" class="highlight-line">YouTube-Videos-As-Posts</a>: This GitHub Action update all the videos, title, and description available inside the channel into the posts in Jekyll site structure everyday automatically. No need to manually do any step after posting any new video in YouTube, it will be updated in website on next day.</p>
</li>
<li>
<p><a href="https://github.com/marketplace/actions/upload-episode-from-youtube-to-anchor-fm" target="_blank" class="highlight-line">Upload Episode from YouTube To Anchor.Fm</a>: This GitHub Action will upload an audio file from a given YouTube video automatically to your Anchor.fm account. It is very useful in a scenario where you have a YouTube account and also a podcast over Spotify, Anchor.fm, Play Music, iTunes etc.</p>
</li>
<li>
<p><a href="https://github.com/marketplace/actions/ebook-convert-action" target="_blank" class="highlight-line">Ebook convert action</a>: You can use this GitHub Action for converting eBooks in several formats. The action supports conversions between many file types i.e.: DOCX, EPUB, HTML, PDF, RTF, TXT&hellip;</p>
</li>
</ul>
<h2 id="some-more-actions">Some More Actions</h2>
<ul>
<li>
<p><a href="https://github.com/marketplace/actions/push-notification-on-whatsapp" target="_blank" class="highlight-line">Push notification on Whatsapp</a>: A GitHub action which sends a WhatsApp message when code is pushed to a repository.</p>
</li>
<li>
<p><a href="https://github.com/marketplace/actions/twitter-together" target="_blank" class="highlight-line">Twitter, together!</a>: This GitHub Action uses text files to post tweets from a GitHub repository for Open Source or event maintainers who share a project Twitter account. GitHub&rsquo;s pull request review mechanism, rather than tweeting directly, encourages increased collaboration, Twitter engagement, and editorial input by allowing anyone to submit a tweet draft to a project.</p>
</li>
<li>
<p><a href="https://github.com/marketplace/actions/notion2github" target="_blank" class="highlight-line">Notion2Github</a>: Automatic synchronization from Notion to GitHub.</p>
</li>
<li>
<p><a href="https://github.com/marketplace/actions/profile-readme-development-stats" target="_blank" class="highlight-line">Profile Readme Development Stats</a>: Are you an early bird or a night owl? When are you most productive during the day? What are languages you code in? This GitHub Action updates everything in your profile README.</p>
</li>
</ul>
<p>GitHub Actions are such a productive tool that I have decided to use one of the above Actions in my GitHub while writing this blog. Could You guess? Which one.</p>
<h4 id="if-you--my-content-connect-me-on--twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on  <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title>Some Apps You Should Use As a Student Developer</title><link>https://mranand.com/blogs/some-apps-you-should-use-as-a-student-developer/</link><pubDate>Thu, 30 Dec 2021 20:57:05 +0530</pubDate><guid>https://mranand.com/blogs/some-apps-you-should-use-as-a-student-developer/</guid><description>Having useful apps in phones is very important now-a-days. And as a student you must use apps useful for you.</description><content:encoded><![CDATA[<p>In this new world of technology, there are various apps coming time to time to ease the life and work of peoples. As a student, you must have to use some apps that helps in your study, learning and creating contents.</p>
<p><strong>Here are some apps you should try as student developer</strong></p>
<h3 id="messaging">Messaging</h3>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1625407711964/aS5qagu3y.gif" alt="MessageNotificationGIF.gif"  />
</p>
<p>In this tough time of Covid-19, the study is fully online, and online messaging apps are being used by every student and teacher to share notes, assignments, and academics-related information. Use any one app that is used by your friends, family member and university mates so you don’t bother much.</p>
<p>These Apps Are:</p>
<ul>
<li><a href="https://signal.org/en/" target="_blank" class="highlight-line">Signal</a></li>
<li><a href="https://www.whatsapp.com/?lang=en" target="_blank" class="highlight-line">WhatsApp</a></li>
<li><a href="https://telegram.org/" target="_blank" class="highlight-line">Telegram</a></li>
</ul>
<h3 id="networking">Networking</h3>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1625409247482/2NjR-oD2i.gif" alt="ConnectingLoadingGIF.gif"  />
</p>
<p>One of the most important things you should do as a student developer is networking. You&rsquo;ve probably heard of networking and know that it includes meeting the proper people who can assist you with your job goals now or in the future.
According to a recent study, networking is responsible for 85 percent of all job searches. So you have to build strong networking to get connected for opportunities.
In this new online world you all need a good networking app.</p>
<p>These Apps Are:</p>
<ul>
<li><a href="https://www.linkedin.com/" target="_blank" class="highlight-line">Linkedin</a></li>
<li><a href="https://mobile.twitter.com/home" target="_blank" class="highlight-line">Twitter</a></li>
<li><a href="https://www.polywork.com/" target="_blank" class="highlight-line">Polywork</a></li>
<li><a href="https://www.showwcase.com/" target="_blank" class="highlight-line">Showwcase</a></li>
</ul>
<h3 id="community-presence">Community Presence</h3>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1625410005323/0jrWjieLT.gif" alt="KrumpingGIF.gif"  />
</p>
<p>Community Presence is very important for students during college. You can learn new things, participate in various activities and get to know many other students of your college. If you are a student developer, you must be contributing to some open-source organization or taking part in projects building. There are some apps where students and developers communities are active, you can join them to take community insights and discussing projects.</p>
<p>These Apps Are:</p>
<ul>
<li><a href="https://slack.com/intl/en-in/" target="_blank" class="highlight-line">Slack</a></li>
<li><a href="https://discord.com/" target="_blank" class="highlight-line">Discord</a></li>
</ul>
<h3 id="time-management">Time Management</h3>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1625411176889/Rj9NGP_Wp.gif" alt="MrBeanCheckingTimeGIF.gif"  />
</p>
<p>Managing time as a student is a very important thing. Students who manage their time properly could achieve greater productivity in the study. proper planning for 24hours can make life easier for you. using alarm is the old way to manage time,  now some apps help to manage your time and proper planning.</p>
<p>These Apps Are:</p>
<ul>
<li><a href="https://www.notion.so/" target="_blank" class="highlight-line">Notion</a></li>
<li><a href="https://www.taskade.com/" target="_blank" class="highlight-line">Taskade</a></li>
</ul>
<h3 id="learn-and-share">Learn and Share</h3>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1625412427844/ZDgqgezqC.gif" alt="INeedYourHelpToDoThatAidanGallagherGIF.gif"  />
</p>
<p>As a student developer, you have to acquire the habit of sharing your learnings with others. You can also read the posts from good developers to gain knowledge. Student developers often need to showcase their codes, projects to the world. Sharing and taking help from others is a good habit, this will help you to the overall growth of yourself. Some apps you should use to sharing content, source codes, and gaining knowledge.</p>
<p>These Apps Are:</p>
<ul>
<li><a href="https://github.com/" target="_blank" class="highlight-line">GitHub</a></li>
<li><a href="https://dev.to/" target="_blank" class="highlight-line">DEV Community</a>  ‍ ‍</li>
<li><a href="https://app.daily.dev/" target="_blank" class="highlight-line">daily.dev</a></li>
</ul>
<h3 id="content-creation">Content Creation</h3>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1625413152984/385FXjMd2.gif" alt="ExclusiveContentZacharyLeviGIF.gif"  />
</p>
<p>As a student, if you are interested in creating content to share your knowledge and views with the world you are good to go. there are lots of apps that can help you like to create blogs and if you are a video creator on Instagram or YouTube you can also reach out to your audience for monetary support for your work by using apps.</p>
<p>These Apps Are:</p>
<ul>
<li><a href="https://medium.com/" target="_blank" class="highlight-line">Medium</a></li>
<li><a href="https://hashnode.com/@Astrodevil/joinme" target="_blank" class="highlight-line">Hashnode</a></li>
<li><a href="https://gumroad.com/" target="_blank" class="highlight-line">Gumroad</a></li>
<li><a href="https://www.buymeacoffee.com/?via=Astrodevil" target="_blank" class="highlight-line">Buy Me a Coffee</a></li>
</ul>
<p><img loading="lazy" src="https://cdn.hashnode.com/res/hashnode/image/upload/v1625414234437/Z2TJ8QZY9.gif" alt="TheOfficeBowGIF.gif"  />
</p>
<h4 id="if-you--my-content-connect-me-on--twitterhttpsmobiletwittercomastrodevil_">If You ❤️ My Content! Connect Me on  <a href="https://mobile.twitter.com/Astrodevil_" target="_blank" class="highlight-line">Twitter</a></h4>



<a class="hugo-shortcodes-bmc-button" href="https://www.buymeacoffee.com/Astrodevil">
    <img src="https://img.buymeacoffee.com/button-api/?button_colour=ffdd00&amp;coffee_colour=ffffff&amp;emoji=&amp;font_colour=000000&amp;font_family=Cookie&amp;outline_colour=000000&amp;slug=Astrodevil&amp;text=Buy&#43;me&#43;a&#43;coffee" alt="Buy me a coffee" />
</a>

]]></content:encoded></item><item><title/><link>https://mranand.com/about/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://mranand.com/about/</guid><description>About🙏🏼 🎓 I am currently pursuing my Bachelor&amp;rsquo;s in Computer Science Engineering.
🌱 I am currently learning Web Development and writing Tech Articles.
🎯 My Goal is to Contribute to as many Open Source projects as possible.
✨ I love to create different types of Contents.
My Experiences🧑🏼‍💻 GSSoC'22 Project Admin: Collaborating with maintainers and contributors for ZeroOctave-JavaScript-Projects. GSSoC'21 Participant: Contributed to some projects, mainly based on Web Development. DWoC'21 Mentor: Helped contributors to collaborate on projects during 2 months period.</description><content:encoded><![CDATA[<h3 id="about">About🙏🏼</h3>
<p>🎓 I am currently pursuing my <strong>Bachelor&rsquo;s in Computer Science Engineering</strong>.</p>
<p>🌱 I am currently learning <strong>Web Development</strong> and writing <strong>Tech Articles</strong>.</p>
<p>🎯 My Goal is to Contribute to as many <strong>Open Source</strong> projects as possible.</p>
<p>✨ I love to create different types of <strong>Contents</strong>.</p>
<h3 id="my-experiences">My Experiences🧑🏼‍💻</h3>
<ul>
<li><a href="https://www.linkedin.com/in/amitesh1208/?lipi=urn%3Ali%3Apage%3Ad_flagship3_profile_view_base%3BI40IE49nRveAC3Ax%2FMwYsg%3D%3D#experience" target="_blank" class="highlight-line">GSSoC'22 Project Admin</a>: Collaborating with maintainers and contributors for ZeroOctave-JavaScript-Projects.</li>
<li><a href="https://github.com/Astrodevil/Astrodevil/blob/main/src/Certificate%20-%20Amitesh%20Anand.png" target="_blank" class="highlight-line">GSSoC'21 Participant</a>: Contributed to some projects, mainly based on Web Development.</li>
<li><a href="https://dwoc.io/" target="_blank" class="highlight-line">DWoC'21 Mentor</a>: Helped contributors to collaborate on projects during 2 months period.</li>
<li><a href="https://hacktoberfest.digitalocean.com/" target="_blank" class="highlight-line">Hacktoberfest-2021</a>: Participated as maintainer.</li>
<li><a href="https://mlh.io/" target="_blank" class="highlight-line">MLH Hackathons</a>: Participated in <a href="https://organize.mlh.io/participants/events/6072-local-hack-day-build" target="_blank" class="highlight-line">Local Hack Day: Build</a> and <a href="https://organize.mlh.io/participants/events/6430-local-hack-day-share" target="_blank" class="highlight-line">Local Hack Day: Share</a>.</li>
<li><a href="https://events.withgoogle.com/googlecloudready-facilitator-program/enrol-in-the-program/#content" target="_blank" class="highlight-line">GoogleCloudReady Facilitator Program</a>: Completed Labs and challenges in <a href="https://www.qwiklabs.com/public_profiles/f3d65b58-4359-4795-96da-1241061ad207" target="_blank" class="highlight-line">Qwiklabs</a>.</li>
</ul>
<!-- 
- [Personal Projects](/projects) built in free time and during weekends.
Timeline of achievements.
- [Education and Certifications](/education) which includes courses completed. -->
<!-- <blockquote class="twitter-tweet"><p lang="en" dir="ltr">Owl bet you&#39;ll lose this staring contest 🦉 <a href="https://t.co/eJh4f2zncC">pic.twitter.com/eJh4f2zncC</a></p>&mdash; San Diego Zoo Wildlife Alliance (@sandiegozoo) <a href="https://twitter.com/sandiegozoo/status/1453110110599868418?ref_src=twsrc%5Etfw">October 26, 2021</a></blockquote>
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

 -->
<p><a href="https://www.passionfroot.me/mranand" target="_blank" class="highlight-line"><img loading="lazy" src="https://img.shields.io/badge/Hire%20me-for%20Technical%20Writing-red" alt="Hire me for technical writing"  />
</a></p>
<hr>
]]></content:encoded></item><item><title/><link>https://mranand.com/featured/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://mranand.com/featured/</guid><description>I have published over 80k words across articles and newsletters, reaching more than 250k readers. I believe in content distribution over relying on a single viral template. The goal is to deliver long-term value, not just short-term impact. See what others are saying about my work!
Collab Posts🤝🏼 A Beginner&amp;rsquo;s Guide to Vector Embeddings Introduction to AI Prompt Engineering Top 15 No Code SaaS Tools to Help Developers Secure Customer Privacy with Differential Privacy and Versatile Data Kit (VDK) (Co-authored) Productionizing Jupyter Notebooks with Versatile Data Kit (VDK) How to Contribute to Open Source: The Ultimate Guide to Collaborative Software Development Conversational AI vs Generative AI: Benefits for Developers Mastering the Code: Essential Tips for Software Engineering Students How Developers, CTOs, and Product Managers Are Building Internal Operational Apps in 2023 DevBytes App: News Shorts App for Developers Say No to Coding!</description><content:encoded><![CDATA[<p>I have published over <strong>80k words</strong> across articles and <a href="https://mranand.substack.com/" target="_blank" class="highlight-line">newsletters</a>, reaching more than <strong>250k readers</strong>. I believe in content <strong>distribution</strong> over relying on a single viral template. The goal is to deliver <strong>long-term</strong> value, not just short-term impact. See what others are saying about <strong><a href="https://senja.io/p/mranand/AmCR2n" target="_blank" class="highlight-line">my work</a></strong>!</p>
<h2 id="collab-posts">Collab Posts🤝🏼</h2>
<ul>
<li><a href="https://code.pieces.app/blog/a-beginners-guide-to-vector-embeddings" target="_blank" class="highlight-line">A Beginner&rsquo;s Guide to Vector Embeddings</a></li>
<li><a href="https://code.pieces.app/blog/introduction-to-ai-prompt-engineering" target="_blank" class="highlight-line">Introduction to AI Prompt Engineering</a></li>
<li><a href="https://code.pieces.app/blog/top-15-no-code-saas-tools-to-help-developers" target="_blank" class="highlight-line">Top 15 No Code SaaS Tools to Help Developers</a></li>
<li><a href="https://medium.com/versatile-data-kit/secure-customer-privacy-with-differential-privacy-and-versatile-data-kit-vdk-b08bee5d54bd" target="_blank" class="highlight-line">Secure Customer Privacy with Differential Privacy and Versatile Data Kit (VDK)</a> <strong>(Co-authored)</strong></li>
<li><a href="https://medium.com/versatile-data-kit/productionizing-jupyter-notebooks-with-versatile-data-kit-vdk-ec5824d31b77" target="_blank" class="highlight-line">Productionizing Jupyter Notebooks with Versatile Data Kit (VDK)</a></li>
<li><a href="https://code.pieces.app/blog/how-to-contribute-to-open-source-the-ultimate-guide" target="_blank" class="highlight-line">How to Contribute to Open Source: The Ultimate Guide to Collaborative Software Development</a></li>
<li><a href="https://code.pieces.app/blog/conversational-ai-vs-generative-ai-benefits" target="_blank" class="highlight-line">Conversational AI vs Generative AI: Benefits for Developers</a></li>
<li><a href="https://code.pieces.app/blog/tips-for-software-engineering-students" target="_blank" class="highlight-line">Mastering the Code: Essential Tips for Software Engineering Students</a></li>
<li><a href="https://blog.devgenius.io/how-developers-ctos-and-product-managers-are-building-internal-operational-apps-in-2023-c2ce9c60a126" target="_blank" class="highlight-line">How Developers, CTOs, and Product Managers Are Building Internal Operational Apps in 2023</a></li>
<li><a href="https://blog.mranand.com/devbytes-app-news-shorts-app-for-developers" target="_blank" class="highlight-line">DevBytes App: News Shorts App for Developers</a></li>
<li><a href="https://blog.flycode.com/say-no-to-coding-introduction-to-low-code-no-code" target="_blank" class="highlight-line">Say No to Coding! Introduction to Low-Code / No-Code</a></li>
<li><a href="https://blog.flycode.com/15-websites-to-help-you-in-your-developer-journey" target="_blank" class="highlight-line">15+ Websites to Help You in Your Developer Journey</a></li>
</ul>
<h2 id="trending-on-hackernoonhttpshackernooncom">Trending On <a href="https://hackernoon.com/" target="_blank" class="highlight-line">HackerNoon</a>🔥</h2>
<ul>
<li><a href="https://hackernoon.com/how-to-use-versatile-data-kit-to-turn-your-jupyter-notebooks-into-scalable-and-reliable-data-pipelines" target="_blank" class="highlight-line">How to Use Versatile Data Kit to Turn Your Jupyter Notebooks Into Scalable &amp; Reliable Data Pipelines</a></li>
<li><a href="https://hackernoon.com/essential-ai-tools-for-developers-in-2023-20-must-try-solutions" target="_blank" class="highlight-line">Essential AI Tools for Developers in 2023: 20 Must-Try Solutions</a></li>
</ul>
<h2 id="nominated-for-the-noonies-2022httpsnoonieshackernooncom">Nominated for <a href="https://noonies.hackernoon.com/" target="_blank" class="highlight-line">The Noonies 2022</a>🔥</h2>
<ul>
<li><a href="https://noonies.hackernoon.com/2022/internet-heroes/2022-hackernoon-contributor-of-the-year-books" target="_blank" class="highlight-line">HackerNoon Contributor of the Year - Books</a> <strong>(Runner-Up)</strong></li>
<li><a href="https://noonies.hackernoon.com/2022/internet-heroes/2022-hackernoon-contributor-of-the-year-developer" target="_blank" class="highlight-line">HackerNoon Contributor of the Year - Developer</a> <strong>(Runner-Up)</strong></li>
<li><a href="https://noonies.hackernoon.com/2022/internet-heroes/2022-hackernoon-contributor-of-the-year-job-hunting" target="_blank" class="highlight-line">HackerNoon Contributor of the Year - Job Hunting</a> <strong>(Runner-Up)</strong></li>
<li><a href="https://noonies.hackernoon.com/2022/programming/2022-hackernoon-contributor-of-the-year-github" target="_blank" class="highlight-line">HackerNoon Contributor of the Year - GitHub</a></li>
</ul>
<h2 id="featured-on-dailydevhttpsappdailydev">Featured On <a href="https://app.daily.dev/" target="_blank" class="highlight-line">daily.dev</a>🔥</h2>
<ul>
<li><a href="https://app.daily.dev/posts/4fHYq7oFR" target="_blank" class="highlight-line">Some Useful GitHub Repositories To Enhance Your Web3 Skills</a></li>
<li><a href="https://app.daily.dev/posts/A3RoaiOp5" target="_blank" class="highlight-line">GirlScript Summer of Code Learning And Experiences: From Contributor To Project Admin</a></li>
<li><a href="https://app.daily.dev/posts/jfYl1brGp" target="_blank" class="highlight-line">Make Your GitHub Profile Standout To Attract Better Opportunities</a></li>
<li><a href="https://app.daily.dev/posts/HkjrD-j4z" target="_blank" class="highlight-line">All Resources To Help You Start Your Open-Source Journey: Open Source Gallery</a></li>
<li><a href="https://app.daily.dev/posts/-x_vCHrUD" target="_blank" class="highlight-line">25 Must-Visit Killer Websites For Developers</a></li>
</ul>
<h2 id="featured-on-devdojohttpsdevdojocom">Featured On <a href="https://devdojo.com/" target="_blank" class="highlight-line">DevDojo</a>🔥</h2>
<ul>
<li><a href="https://devdojo.com/tutorial/top-20-must-try-ai-tools-for-developers-in-2023" target="_blank" class="highlight-line">Top 20 Must Try AI Tools for Developers in 2023</a></li>
<li><a href="https://devdojo.com/astrodevil/some-useful-github-repositories-to-enhance-your-web3-skills" target="_blank" class="highlight-line">Some Useful GitHub Repositories To Enhance Your Web3 Skills</a></li>
<li><a href="https://devdojo.com/astrodevil/some-apps-you-should-use-as-a-student-developer" target="_blank" class="highlight-line">Some Apps You Should Use As a Student Developer</a></li>
<li><a href="https://devdojo.com/astrodevil/40-no-codelow-code-tools-and-resources-for-developers-in-2022" target="_blank" class="highlight-line">40+ No Code/Low Code Tools And Resources For Developers In 2022</a></li>
<li><a href="https://devdojo.com/posts/25-must-visit-killer-websites-for-developers" target="_blank" class="highlight-line">25 Must-Visit Killer Websites For Developers</a></li>
</ul>
<h3 id="featured-on-girlscript-summer-of-code-bloghttpsgssocgirlscripttechblog">Featured On <a href="https://gssoc.girlscript.tech/blog" target="_blank" class="highlight-line">GirlScript Summer of Code Blog</a>🔥</h3>
<p><a href="https://ko-fi.com/astrodevil" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.ko-fi.com/cdn/kofi1.png?v=3" alt="Buy Me a Coffee at ko-fi.com"  />
</a></p>
<hr>
]]></content:encoded></item><item><title/><link>https://mranand.com/gallery/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://mranand.com/gallery/</guid><description>Developer Tech🔮 A curated list of Gadgets a developer needs in the different price ranges.
This Amazon idealist is a great place to find gadgets, tools, and other things that you can use if you have no idea about the tech needed for a proper setup.
Resources Gallery📔 If you want to find resources realted to following topics:
🌐 Web Development 🤖 Machine Learning 📚 Open Source (Updating New Contents) ☕ Programmers Must Know 🐍 Python 🔥 Web3/Blockchain ⚡ Low-Code/No-Code Huge resources gallery in making&amp;hellip;.</description><content:encoded><![CDATA[<p><a href="https://www.passionfroot.me/mranand" target="_blank" class="highlight-line"><img loading="lazy" src="https://img.shields.io/badge/Hire%20me-for%20Technical%20Writing-red" alt="Hire me for technical writing"  />
</a>
<a href="https://astrodevil.gumroad.com/" target="_blank" class="highlight-line"><img loading="lazy" src="https://img.shields.io/badge/Shop%20from-my%20Gumroad%20Store-blue" alt="Shop from my gumroad store"  />
</a></p>
<h2 id="developer-techhttpswwwamazoninshopastrolist3fm5kpv7y33sp"><a href="https://www.amazon.in/shop/astro/list/3FM5KPV7Y33SP" target="_blank" class="highlight-line">Developer Tech🔮</a></h2>
<p>A curated list of Gadgets a developer needs in the different price ranges.</p>
<p>This Amazon idealist is a great place to find gadgets, tools, and other things that you can use if you have no idea about the tech needed for a proper setup.</p>
<h2 id="resources-galleryhttpsastrodevilgumroadcomldshfg"><a href="https://astrodevil.gumroad.com/l/dsHfg" target="_blank" class="highlight-line">Resources Gallery📔</a></h2>
<p>If you want to find resources realted to following topics:</p>
<ul>
<li>🌐 Web Development</li>
<li>🤖 Machine Learning</li>
<li>📚 Open Source (Updating New Contents)</li>
<li>☕ Programmers Must Know</li>
<li>🐍 Python</li>
<li>🔥 Web3/Blockchain</li>
<li>⚡ Low-Code/No-Code</li>
</ul>
<p>Huge resources gallery in making&hellip;.</p>
<h2 id="zerooctavehttpsgithubcomzerooctave"><a href="https://github.com/ZeroOctave" target="_blank" class="highlight-line">ZeroOctave🎈</a></h2>
<p>ZeroOctave is a GitHub Organization.</p>
<p>welcomes newbies to Open Source. Contribute in our organization to enhance your skills and obviously our source codes.</p>
<h2 id="hackathon--opportunityhttpswwwshowwcasecomcommunityhackathon"><a href="https://www.showwcase.com/community/hackathon" target="_blank" class="highlight-line">Hackathon &amp; Opportunity🎊</a></h2>
<p>Hackathon &amp; Opportunity is a <a href="https://www.showwcase.com/" target="_blank" class="highlight-line">Showwcase</a> community.</p>
<p>Find hackathons, open-source, and various good opportunities.  Many hackathon participants find it hard to get teammates, you can find them here by making a post.</p>
<p>You are welcome to share valuable opportunities to help students and beginners.</p>
<p><a href="https://ko-fi.com/astrodevil" target="_blank" class="highlight-line"><img loading="lazy" src="https://cdn.ko-fi.com/cdn/kofi1.png?v=3" alt="Buy Me a Coffee at ko-fi.com"  />
</a></p>
<hr>
]]></content:encoded></item><item><title/><link>https://mranand.com/blogs/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://mranand.com/blogs/</guid><description/><content:encoded></content:encoded></item><item><title/><link>https://mranand.com/videos/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://mranand.com/videos/</guid><description>Watch My Latest Videos</description><content:encoded><![CDATA[<h1 id="watch-my-latest-videos">Watch My Latest Videos</h1>


    
    <div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;">
      <iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="allowfullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/8lNbbuNop3Q?autoplay=1&controls=1&end=0&loop=0&mute=1&start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"
      ></iframe>
    </div>

<hr>


    
    <div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;">
      <iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="allowfullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/qifhqBZ95CU?autoplay=1&controls=1&end=0&loop=0&mute=1&start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"
      ></iframe>
    </div>

<hr>


    
    <div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;">
      <iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="allowfullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/awd1SzD-yXI?autoplay=1&controls=1&end=0&loop=0&mute=1&start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"
      ></iframe>
    </div>

<hr>
]]></content:encoded></item><item><title>Privacy Policy</title><link>https://mranand.com/privacy/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://mranand.com/privacy/</guid><description>mranand.com</description><content:encoded><![CDATA[<h2 id="privacy">Privacy</h2>
<p><code>Last updated on 7th August 2023, 10.00 AM IST.</code></p>
<p>Welcome to mranand.com!</p>
<p>At mranand.com, we take your privacy seriously and want to ensure that you have a clear understanding of how we use your personal data when you use our website. Please read this privacy policy to get insights into our data practices.</p>
<ol>
<li>
<p><strong>Independent Website:</strong>
mranand.com is an independent website and operates autonomously. It is not affiliated with any company or organization.</p>
</li>
<li>
<p><strong>Use of Cookies:</strong>
When you visit our website, we may utilize cookies from giscus.app and github.com for comments functionality. These cookies enable authenticated users via Github to post comments on our website.</p>
</li>
<li>
<p><strong>Google Web Analytics:</strong>
To enhance our website&rsquo;s performance and provide a better user experience, we employ a Google web analytics tool. This tool gathers data about how you interact with our site. The analytics data is stored on Google Analytics&rsquo; database, which is managed by Google.</p>
</li>
<li>
<p><strong>Google AdSense:</strong>
Advertisements displayed on our website are served by Google AdSense. As a third-party ad network, Google AdSense may use cookies to serve personalized ads based on your interests and preferences.</p>
</li>
<li>
<p><strong>Privacy Policies of External Websites:</strong>
Please be aware that our website contains cookies from other websites. Our privacy policy solely pertains to mranand.com. Therefore, if you choose to click on a link that leads to another website, we encourage you to review their respective privacy policies.</p>
</li>
<li>
<p><strong>Revolvermaps Page Views:</strong>
Additionally, we use Revolvermaps to track page views on our website. This tool helps us understand the geographical distribution of our visitors and their interaction with our content.</p>
</li>
</ol>
<p>We prioritize the security and confidentiality of your personal data, and we do not share your information with third parties unless required by law.</p>
<p>By using mranand.com, you consent to the practices described in this privacy policy. If you have any concerns or questions about our data handling practices, please don&rsquo;t hesitate to contact us.</p>
<p>Thank you for trusting us with your data, and we hope you enjoy your time on mranand.com!</p>
]]></content:encoded></item></channel></rss>