<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Halim Shams</title>
    <description>The latest articles on Forem by Halim Shams (@halimshams).</description>
    <link>https://forem.com/halimshams</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F785326%2F04199aac-f3e9-4932-ba6c-b0d444611e4d.jpeg</url>
      <title>Forem: Halim Shams</title>
      <link>https://forem.com/halimshams</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/halimshams"/>
    <language>en</language>
    <item>
      <title>The July Tech and Dev Highlights</title>
      <dc:creator>Halim Shams</dc:creator>
      <pubDate>Thu, 01 Aug 2024 14:49:22 +0000</pubDate>
      <link>https://forem.com/halimshams/the-july-tech-and-dev-highlights-4njj</link>
      <guid>https://forem.com/halimshams/the-july-tech-and-dev-highlights-4njj</guid>
      <description>&lt;p&gt;&lt;strong&gt;&lt;em&gt;From the Latest Stack Overflow Survey to Major Tech Releases, Here's What You Need to Know.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Hey there! We've had some exciting dev updates in July, so it is worth spending a couple of minutes delving into the highlights.&lt;/p&gt;

&lt;h2&gt;
  
  
  Stack Overflow 2024 Survey
&lt;/h2&gt;

&lt;p&gt;The &lt;a href="https://survey.stackoverflow.co/2024/" rel="noopener noreferrer"&gt;Stack Overflow 2024&lt;/a&gt; Developer Survey results were recently released, offering one of the most accurate depictions of the software development world. Here are some key takeaways:&lt;/p&gt;

&lt;h3&gt;
  
  
  Popular Programming, Scripting, and Markup Languages
&lt;/h3&gt;

&lt;p&gt;There are no surprises here—JavaScript, along with TypeScript, stays at the top of all. Python, Java, and the C languages also hold strong positions in the top 10. Some of the modern and young alternatives like Go, Rust, and Kotlin are making their way up but are still trailing behind the industry giants.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8ffcjshmjgv50fvkt3fu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8ffcjshmjgv50fvkt3fu.png" alt="Popular programming, scripting, and markup languages" width="800" height="575"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Database Technologies
&lt;/h3&gt;

&lt;p&gt;SQL databases dominate the top 3 positions, with specialized solutions like MongoDB, Redis, and Elasticsearch also making it into the top 10.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbiryy99nsqk5fjstrdnx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbiryy99nsqk5fjstrdnx.png" alt="Popular database technologies" width="800" height="575"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Other Notable Mentions
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Cloud Platforms&lt;/strong&gt;: Amazon Web Services (AWS) continues to lead.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Web Frameworks&lt;/strong&gt;: React is at the forefront.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;General Frameworks&lt;/strong&gt;: .NET is the most widely used.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Developer Tools&lt;/strong&gt;: Docker is the top choice for professional developers, while Microsoft Teams leads the synchronous tools section.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr5sm218nknttbnsw71zf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr5sm218nknttbnsw71zf.png" alt="Popular cloud platforms and web frameworks" width="800" height="575"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Kotlin 2.0 Release
&lt;/h2&gt;

&lt;p&gt;Speaking of Kotlin, its most-awaited &lt;a href="https://kotlinlang.org/docs/whatsnew20.html" rel="noopener noreferrer"&gt;version 2&lt;/a&gt; is finally here! This update brings an improved K2 compiler, offering performance enhancements and a better architecture for multiplatform projects. Additionally, lambda functions are now aligned with JVM optimizations, and smart casting has been enhanced in various scenarios.&lt;/p&gt;

&lt;h2&gt;
  
  
  Meta's New AI Model
&lt;/h2&gt;

&lt;p&gt;In the AI world, Meta has released its most capable open-source model to date, boasting 405 billion parameters and a 128,000 context length. In simpler terms, more parameters mean the model can capture more complex patterns, but it comes at a higher computational cost. The expanded context length enables the model to handle longer input sequences, improving performance on tasks that require understanding intricate dependencies. Meta is clearly committed to the open-source model for their AI work—no red flags here.&lt;/p&gt;

&lt;h2&gt;
  
  
  Angular's New Feature
&lt;/h2&gt;

&lt;p&gt;Back in the web dev world, Angular has &lt;a href="https://blog.angular.dev/introducing-let-in-angular-686f9f383f0f" rel="noopener noreferrer"&gt;announced&lt;/a&gt; a new way to define reusable template variables. This aims to enhance code readability and maintainability by reducing boilerplate and keeping logic closer to the template. The &lt;code&gt;@let&lt;/code&gt; directive works similarly to getters in terms of reactivity and component rendering impact. This is part of Angular's ongoing effort to simplify the dev experience with a more intuitive syntax.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkpjeci1cx2lblzh9wipg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkpjeci1cx2lblzh9wipg.png" alt="Angular new feature" width="800" height="575"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Astro's Latest Release
&lt;/h2&gt;

&lt;p&gt;Astro had another of its almost monthly &lt;a href="https://astro.build/blog/astro-4120/" rel="noopener noreferrer"&gt;releases&lt;/a&gt;, and the highlight is its new server islands. This experimental feature allows you to combine static HTML with dynamically server-generated components in an efficient manner.&lt;/p&gt;

&lt;h2&gt;
  
  
  TinyBase Version 5
&lt;/h2&gt;

&lt;p&gt;Finally, in the database world, TinyBase, the reactive data store for local-first apps, has reached &lt;a href="https://tinybase.org/guides/releases/#v5-1" rel="noopener noreferrer"&gt;version 5&lt;/a&gt;. This release introduces a new manageable store, allowing for deterministic merging of data changes, updates to data synchronization across different instances, and an improved module structure to make imports more intuitive.&lt;/p&gt;




&lt;p&gt;If you find these updates useful, consider sharing it with others and following me for more news and trends in the ever-evolving world of software development. Stay tuned for more exciting updates!&lt;/p&gt;

&lt;p&gt;Don’t forget to subscribe to my exclusive newsletter: 👇&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fojuxy91h1ert409iug84.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fojuxy91h1ert409iug84.png" alt="Subscribe to my newsletter" width="800" height="200"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://halimshams.substack.com/subscribe" class="ltag_cta ltag_cta--branded" rel="noopener noreferrer"&gt;Subscribe now!&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;— You can follow me on &lt;a href="https://x.com/halimoffi" rel="noopener noreferrer"&gt;X (formerly Twitter)&lt;/a&gt; or &lt;a href="https://www.linkedin.com/in/halimcoding/" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt; as well, where I’ll share short and incredible stuffs out there, so don’t miss those. 🚀&lt;/p&gt;

</description>
      <category>news</category>
      <category>highlights</category>
      <category>webdev</category>
      <category>survey</category>
    </item>
    <item>
      <title>A No-BS Guide to Master Coding and Land a job</title>
      <dc:creator>Halim Shams</dc:creator>
      <pubDate>Thu, 18 Jul 2024 05:24:14 +0000</pubDate>
      <link>https://forem.com/halimshams/a-no-bs-guide-to-master-coding-and-land-a-job-5e7l</link>
      <guid>https://forem.com/halimshams/a-no-bs-guide-to-master-coding-and-land-a-job-5e7l</guid>
      <description>&lt;p&gt;&lt;strong&gt;Learn from others’ mistakes and save time.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Learning to code and landing that dream coding job is exciting, but it can also be a bit overwhelming. I know this, because I’ve met with the majority of software engineers recently and ask them for advice they and things they wish they knew when they were new programming.&lt;/p&gt;

&lt;p&gt;It took them a whole year to get their first coding job, and they shared the mistakes they made along the way.&lt;/p&gt;

&lt;p&gt;So I'm here to share their secret lessons with you and help you avoid the pitfalls they stumbled upon.&lt;/p&gt;

&lt;p&gt;Let's dive in!&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;1.  Choose the Right Language&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Before you dive headfirst into the world of coding, take a moment to &lt;strong&gt;choose your weapon wisely&lt;/strong&gt; — &lt;em&gt;I mean, your language&lt;/em&gt;! Pick &lt;strong&gt;one that's flexible, has a lot of applications&lt;/strong&gt;, and most importantly, one that &lt;strong&gt;you'll actually enjoy learning&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;JavaScript and Python are two of the thousands languages to start with. They're both super flexible and &lt;strong&gt;can be used for everything from web development to data science to mobile apps&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;2.  Don't Jump Around&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;When I first started with coding, I choose Python and after a month I went to JavaScript and then I started learning Ruby on Rails and I went to PHP. &lt;strong&gt;I wasted all my time just jumping from technology to another and ended up learning non of them.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I know it's tempting to try out every cool language and framework out there, but trust me, it's a recipe for failure and wasted time. &lt;strong&gt;Pick one language, stick with it, and become a master&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;3.  Learn the Language Wisely&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;When it comes to learning, ditch those long YouTube videos that promise to take you from beginner to expert in 15 hours. They might seem like a shortcut, but &lt;strong&gt;they often leave you feeling lost when it's your time to put your hand on keyboard and code on your own&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Instead, &lt;strong&gt;opt for structured courses&lt;/strong&gt; that will push you to code. Like those offered by FreeCodeCamp’s website or The Odin Project. They'll guide you through the fundamentals, build upon concepts, and push you to code instead of just watching.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;You won’t be able to cook better by reading cooking books. You have to cook, to cook better.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Don’t rush. Take your time and become good at it.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;4.  Building Projects (With Help)&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Exercises are great, but nothing beats building real projects. &lt;strong&gt;Start with guided projects&lt;/strong&gt;, where you'll have a clear roadmap and learn how to build projects from scratch by setting up the environment and tools needed before heading to building it.&lt;/p&gt;

&lt;p&gt;If you're starting with JavaScript, I highly recommend tackling some &lt;strong&gt;vanilla JavaScript projects&lt;/strong&gt;.  This means &lt;strong&gt;no frameworks or libraries, just pure JavaScript&lt;/strong&gt;. It's like learning to walk before you can run.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;5.  Showcase Your Skills&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Once you've built some projects, it's time to showcase your skills. Upload your projects to your GitHub account and create a personal website to highlight your work. This is your digital resume, so make it shine!&lt;/p&gt;

&lt;p&gt;I’d recommend you &lt;strong&gt;put all your project in a section of your personal website,&lt;/strong&gt; somewhere people can click on it and explore what you’ve built.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;6.  Apply Smart, Not Hard&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;When it comes to applying for jobs, aim for those that require zero to two years of experience. &lt;strong&gt;Applying to jobs that are above you level can led to frustration&lt;/strong&gt;. Don't get discouraged if you don't get responses right away. It's not always about your coding skills, but also about your resume and portfolio.&lt;/p&gt;

&lt;p&gt;More importantly, &lt;strong&gt;make sure you’re applying to a company directly.&lt;/strong&gt; Skip the easy apply buttons on job boards. Instead, go directly to the company's website and &lt;strong&gt;apply through their career page&lt;/strong&gt;. This will increases your chances of getting noticed.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;7.  Soft Skills Matter&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Technical skills are important, but don't underestimate the power of soft skills. Be friendly, enthusiastic, and show your passion for coding. Remember, recruiters are looking for people who are a good fit for their team not lonely nerds who can’t communicate well.&lt;/p&gt;

&lt;p&gt;It’s as easy as pie for a recruiter to identify your soft skills in a simple interview. &lt;strong&gt;Don’t be a robot&lt;/strong&gt; during interview, smile, drink water, throw some jokes, lastly, &lt;strong&gt;be a human being&lt;/strong&gt;.&lt;/p&gt;




&lt;p&gt;Remember, it's not a race, but a marathon. Stay focused, keep practicing, and never stop learning. And for more coding tips and tricks, be sure to follow me for more content!&lt;/p&gt;

&lt;p&gt;This was all it for this article, don't forget to share it with others as well.&lt;/p&gt;

&lt;p&gt;Don’t forget to subscribe to my exclusive newsletter: 👇&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftxydj6qrzkg43tkdbbf5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftxydj6qrzkg43tkdbbf5.png" alt="Subscribe to my newsletter" width="800" height="200"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://halimshams.substack.com/subscribe" class="ltag_cta ltag_cta--branded" rel="noopener noreferrer"&gt;Subscribe now!&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;— You can follow me on &lt;a href="https://x.com/halimoffi" rel="noopener noreferrer"&gt;X (formerly Twitter)&lt;/a&gt; or &lt;a href="https://www.linkedin.com/in/halimcoding/" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt; as well, where I’ll share short and incredible stuffs out there, so don’t miss those. 🚀&lt;/p&gt;

</description>
      <category>softwareengineering</category>
      <category>career</category>
      <category>programming</category>
      <category>beginners</category>
    </item>
    <item>
      <title>16 Free New APIs to Supercharge Your Next Project</title>
      <dc:creator>Halim Shams</dc:creator>
      <pubDate>Mon, 15 Jul 2024 08:58:45 +0000</pubDate>
      <link>https://forem.com/halimshams/16-free-new-apis-to-supercharge-your-next-project-4j26</link>
      <guid>https://forem.com/halimshams/16-free-new-apis-to-supercharge-your-next-project-4j26</guid>
      <description>&lt;p&gt;If you looking to add some serious oomph to your next programming project, I've compiled a list of 16 free APIs that can help you build amazing things, without rubbing the bank.&lt;/p&gt;

&lt;p&gt;Let's dive in…&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;1. &lt;a href="https://unsplash.com/documentation" rel="noopener noreferrer"&gt;Unsplash API&lt;/a&gt;&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;If you’re tired of those generic, low-quality, full of watermark stock photos, Unsplash API is here to save you. With this API, you can access a treasure trove of high-quality, free stock photos.&lt;/p&gt;

&lt;p&gt;Imagine building a blog post generator that automatically pulls relevant images, or a group chat bot that adds a visual touch to your conversations. The possibilities are endless, just think about it.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;2. &lt;a href="https://developers.google.com/youtube/v3" rel="noopener noreferrer"&gt;YouTube API&lt;/a&gt;&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Using this API you can take a full control over YouTube. You can use this incredible API to dynamically change thumbnails, titles, and even perform A/B testing to see which title or thumbnail get the most clicks.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;3. &lt;a href="https://getpantry.cloud/" rel="noopener noreferrer"&gt;Pantry&lt;/a&gt;&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;This API allows you to store up to 100MB of JSON data, complete with a user-friendly CRUD interface. Think of it as a lightweight alternative to traditional databases, perfect for small-scale projects. If you don’t know database, well don’t. This API is way more simple database to integrate your project to.&lt;/p&gt;

&lt;p&gt;Similar to TinyDB in Python if you’ve used it before.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;4. &lt;a href="https://dashboard.clearbit.com/docs" rel="noopener noreferrer"&gt;Clearbit&lt;/a&gt;&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Ever needed to display a company logo in your app? Clearbit API comes to the rescue!&lt;/p&gt;

&lt;p&gt;With a simple HTTP request, you can fetch the logo for any company, adding a touch of professionalism to your projects.&lt;/p&gt;

&lt;p&gt;It’s very useful — &lt;em&gt;if you care about company’s logo actually&lt;/em&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;5. &lt;a href="https://github.com/Waifu-im/waifu-api" rel="noopener noreferrer"&gt;Waifu API&lt;/a&gt;&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;For all you anime enthusiasts, the Waifu API is a must-try. This API lets you create your own anime wife, complete with a variety of features. My favorite is the &lt;code&gt;/uwuify&lt;/code&gt; endpoint, which transforms your text into the cutest, most adorable form possible.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;6. &lt;a href="https://www.igdb.com/api" rel="noopener noreferrer"&gt;The Internet Game Database (IGD) API&lt;/a&gt;&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;If you’re a gamer-programmer, the IGD API, powered by Twitch, is a goldmine of information about any game.&lt;/p&gt;

&lt;p&gt;Search for game versions, genres, covers, images, and more. Build your own game database or create a unique gaming experience with the power of this API.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;7. &lt;a href="https://discord.com/developers/docs/intro" rel="noopener noreferrer"&gt;Discord API&lt;/a&gt;&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;The Discord API allows you to build custom bots that can play games, interact with your community, and much more.&lt;/p&gt;

&lt;p&gt;Think of it as a way to bring your server to life with the power of this API.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;8. &lt;a href="https://worldnewsapi.com/" rel="noopener noreferrer"&gt;World News API&lt;/a&gt;&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;If need up-to-date world news for your application, the World News API provides a free tier, but be aware of the daily call limit.&lt;/p&gt;

&lt;p&gt;If you're building something that requires frequent news updates, their paid plans are still worth it.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;9. &lt;a href="https://random-data-api.com/" rel="noopener noreferrer"&gt;Random Data API&lt;/a&gt;&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Testing an app? You'll need some fake data initially. The Random Data API provides a wealth of data models, perfect for populating your application with realistic information.&lt;/p&gt;

&lt;p&gt;What I love about this API is that they require no API key!&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;10. &lt;a href="https://exchangeratesapi.io/" rel="noopener noreferrer"&gt;FX Rates API&lt;/a&gt;&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Dealing with foreign exchange rates can be a headache. The FX Rates API eliminates the stress.  Get real-time exchange rates and even historical data with their free tier.&lt;/p&gt;

&lt;p&gt;Perfect for any application that involves financial transactions.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;11. &lt;a href="https://developers.google.com/docs/api/reference/rest" rel="noopener noreferrer"&gt;Google Docs API&lt;/a&gt;&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Did you know you can connect to Google Docs with an API? Use it to access data from your documents, create add-ons, or integrate with other services.&lt;/p&gt;

&lt;p&gt;It seemed unbelievable at first when I heard Google Docs has API. But here you go.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;12. &lt;a href="https://www.iloveapi.com/" rel="noopener noreferrer"&gt;ILovePDF API&lt;/a&gt;&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;I bet we all love PDFs. The ILovePDF API lets you love PDFs even more.&lt;/p&gt;

&lt;p&gt;Extract text, edit, remove passwords, compress, convert, and more. This API is a must-have for any application that involves PDF manipulation.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;13. &lt;a href="https://cloudconvert.com/api/v2" rel="noopener noreferrer"&gt;CloudConverter API&lt;/a&gt;&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Need to convert files between different formats? The CloudConverter API makes it a breeze.&lt;/p&gt;

&lt;p&gt;Get 25 free conversions per day, perfect for small-scale projects. But if the conversion is only between two specific file types, I’d recommend automating it with Python, no APIs needed.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;14. &lt;a href="https://dictionaryapi.dev/" rel="noopener noreferrer"&gt;Free Dictionary API&lt;/a&gt;&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;This API doesn't require an API key and is powered by donations — props to them.&lt;/p&gt;

&lt;p&gt;You can build a simple dictionary app or integrate it into your existing projects to add a touch of vocabulary magic or if you highlight a word, it’ll give you the definition.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;15. &lt;a href="https://developer.spotify.com/documentation/web-api" rel="noopener noreferrer"&gt;Spotify API&lt;/a&gt;&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;The Spotify API lets you access a wealth of music data, from artists and songs to listening history to the pennies that they pay artists every year.&lt;/p&gt;

&lt;p&gt;Build a music recommendation engine, create a personalized playlist generator, or fetch your recently listened song.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;16. &lt;a href="https://openfoodfacts.github.io/openfoodfacts-server/api/" rel="noopener noreferrer"&gt;Open Food Facts API&lt;/a&gt;&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Ever wondered what's in your food? The Open Food Facts API has got you covered.&lt;/p&gt;

&lt;p&gt;Enter a barcode number, and it will provide detailed information about the product, including ingredients, nutritional values, and more.&lt;/p&gt;

&lt;p&gt;Perfect for building a food tracking app or a nutritional information tool.&lt;/p&gt;




&lt;p&gt;This was all it for this article, don't forget to share it with others as well.&lt;/p&gt;

&lt;p&gt;Don’t forget to subscribe to my exclusive newsletter: 👇&lt;br&gt;
&lt;a href="https://halimshams.substack.com/subscribe" class="ltag_cta ltag_cta--branded" rel="noopener noreferrer"&gt;Subscribe now!&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;— You can follow me on &lt;a href="https://x.com/halimoffi" rel="noopener noreferrer"&gt;X (formerly Twitter)&lt;/a&gt; or &lt;a href="https://www.linkedin.com/in/halimcoding/" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt; as well, where I’ll share short and incredible stuffs out there, so don’t miss those. 🚀&lt;/p&gt;

</description>
      <category>api</category>
      <category>programming</category>
      <category>sideprojects</category>
    </item>
    <item>
      <title>The Truth About Learning Python in 2024</title>
      <dc:creator>Halim Shams</dc:creator>
      <pubDate>Sat, 13 Jul 2024 05:55:50 +0000</pubDate>
      <link>https://forem.com/halimshams/the-truth-about-learning-python-in-2024-4m8m</link>
      <guid>https://forem.com/halimshams/the-truth-about-learning-python-in-2024-4m8m</guid>
      <description>&lt;p&gt;&lt;strong&gt;Is Python Still the Golden Ticket?&lt;/strong&gt;&lt;/p&gt;




&lt;p&gt;For years, Python has been the darling of the programming world, touted as the key to unlocking a lucrative career in tech. But with the AI revolution, layoffs, and a shifting market, &lt;strong&gt;is Python still the best bet for programmers&lt;/strong&gt;? In this article, we'll give you an objective assessment of Python's current state in the industry and reveal &lt;strong&gt;the real truth about learning programming languages in today's rapidly changing landscape&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;To understand why Python has been so popular, let's take a step back. Python was created in 1991, a time when programming was a far cry from what it is today. Back then, languages like C, C++, and Java were the norm, and &lt;strong&gt;coding was a tough process&lt;/strong&gt;. Python changed the game by making programming &lt;strong&gt;easy and accessible&lt;/strong&gt;, allowing developers &lt;strong&gt;to achieve complex tasks with just a few lines of code&lt;/strong&gt;. This led to a self-reinforcing cycle where Python's popularity made it even more popular, as companies had access to a larger pool of developers.&lt;/p&gt;

&lt;p&gt;Today, Python remains a dominant force in industries like &lt;strong&gt;data science, AI, and backend development&lt;/strong&gt;. However, with the AI revolution and the rise of "&lt;strong&gt;Big Data&lt;/strong&gt;," the landscape is shifting. While AI might seem like a positive trend for Python programmers, the reality is that &lt;strong&gt;most AI development is now centered around existing tools like ChatGPT, rather than building new AI from scratch&lt;/strong&gt;. Meanwhile, &lt;strong&gt;"Big Data" is becoming increasingly important&lt;/strong&gt;, with companies using Python to analyze and draw insights from massive datasets.&lt;/p&gt;

&lt;p&gt;So, &lt;strong&gt;is Python still a viable option for programmers&lt;/strong&gt;? The answer is a resounding &lt;strong&gt;‘&lt;em&gt;yes&lt;/em&gt;’&lt;/strong&gt;. According to job data, &lt;strong&gt;Python remains the second most popular programming language, behind JavaScript&lt;/strong&gt;. However, the real truth about learning programming languages today is that &lt;strong&gt;it's not just about mastering one language&lt;/strong&gt;. With AI democratizing programming, &lt;strong&gt;it's becoming easier for anyone to learn to code&lt;/strong&gt;. &lt;strong&gt;What sets successful developers apart is their ability to solve problems with code, think critically, and make the right decisions about what code to write.&lt;/strong&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;The Real Secret to Success as a Python Developer&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;In today's market, &lt;strong&gt;it's not enough to just learn Python or build a few simple projects&lt;/strong&gt;. To stand out, &lt;strong&gt;you need to be able to sell your skills, showcase your problem-solving abilities&lt;/strong&gt;, and demonstrate the character traits that companies look for in a developer. This might seem daunting, but the good news is that it's easier than you think. By focusing on building &lt;strong&gt;real-world projects, highlighting your skills&lt;/strong&gt;, and showcasing your unique perspective, you can stand out from the crowd and land your dream job.&lt;/p&gt;

&lt;h3&gt;
  
  
  Final thoughts
&lt;/h3&gt;

&lt;p&gt;While Python remains a dominant force in the industry, the &lt;strong&gt;real key to success lies in developing the skills, mindset, and character traits&lt;/strong&gt; that companies look for in a developer. Most programmers out there don't even know how to do the basics, like most resumes that I look at, are so bad that &lt;strong&gt;if you just do a couple of the basics right, you'll automatically Stand Out above 95%&lt;/strong&gt;, and I know this might sound overwhelming. You can just go out and take these steps and go and apply them yourself. If you're serious about making it happen in 2024, then go explore this article and build these project and put them in your resume:&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;a href="/halimshams" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F785326%2F04199aac-f3e9-4932-ba6c-b0d444611e4d.jpeg" alt="halimshams"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/halimshams/5-unique-project-ideas-to-make-your-software-engineering-resume-stand-out-7b" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;5 Unique Project Ideas to Make Your Software Engineering Resume Stand Out&lt;/h2&gt;
      &lt;h3&gt;Halim Shams ・ Jul 10&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#sideprojects&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#resume&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#career&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#softwareengineering&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


&lt;p&gt;Remember, these project ideas are just my recommendations which I found quite rare, you might have more brilliant ideas that you’d like to turn them to real life which prioritizing them above any other project is way more better than jumping to these project ideas.&lt;/p&gt;




&lt;p&gt;This was all it for this article, don't forget to share it with others as well.&lt;/p&gt;

&lt;p&gt;Don’t forget to subscribe to my exclusive newsletter: 👇&lt;br&gt;
&lt;a href="https://halimshams.substack.com/subscribe" class="ltag_cta ltag_cta--branded" rel="noopener noreferrer"&gt;Subscribe now!&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;— You can follow me on &lt;a href="https://x.com/halimoffi" rel="noopener noreferrer"&gt;X (formerly Twitter)&lt;/a&gt; or &lt;a href="https://www.linkedin.com/in/halimcoding/" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt; as well, where I’ll share short and incredible stuffs out there, so don’t miss those. 🚀&lt;/p&gt;

</description>
      <category>python</category>
      <category>programming</category>
    </item>
    <item>
      <title>Invest in Your Future as an Expert Programmer</title>
      <dc:creator>Halim Shams</dc:creator>
      <pubDate>Fri, 12 Jul 2024 06:15:58 +0000</pubDate>
      <link>https://forem.com/halimshams/invest-in-your-future-as-an-expert-programmer-12nm</link>
      <guid>https://forem.com/halimshams/invest-in-your-future-as-an-expert-programmer-12nm</guid>
      <description>&lt;h2&gt;
  
  
  &lt;strong&gt;Why a 3-Year Investment in Yourself Can Pay Off for Decades&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;We all want to see results quickly. We want to hit the jackpot, land that dream job, and achieve our goals overnight. But the truth is, &lt;strong&gt;most of us live so shortsighted, focusing on immediate gratification over long-term growth&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Imagine this: You're 25 years old, working a job you hate, and you finally realize you want to do something different. You fall in love with coding, data science, or maybe even building a YouTube channel or blog. You decide to make a big life change, to invest in yourself and build a new career.&lt;/p&gt;

&lt;p&gt;You &lt;strong&gt;commit to learning, sacrificing time and energy, and pushing yourself to the limit&lt;/strong&gt;. You spend &lt;strong&gt;three years studying&lt;/strong&gt;, &lt;strong&gt;building projects&lt;/strong&gt;, &lt;strong&gt;making connections&lt;/strong&gt;, and &lt;strong&gt;gaining experience&lt;/strong&gt;. Then, after all that hard work, you land your dream job. You're 28 years old, and you're making &lt;strong&gt;3x the salary&lt;/strong&gt; you were before.&lt;/p&gt;

&lt;p&gt;Now, compare that with the alternative: You spend three years &lt;strong&gt;complaining about your situation&lt;/strong&gt;, wishing things were different, but &lt;strong&gt;never taking action&lt;/strong&gt;. You &lt;strong&gt;jump from tutorial to tutorial&lt;/strong&gt;, &lt;strong&gt;criticize others' content&lt;/strong&gt; by leaving negative comments under they content, and &lt;strong&gt;waste time&lt;/strong&gt; on unproductive pursuits. Three years pass, and &lt;strong&gt;you're still in the same spot&lt;/strong&gt;, you haven’t moved an inch forward.&lt;/p&gt;

&lt;p&gt;The difference? &lt;strong&gt;Three years of hard work versus three years of wasted effort&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;As Naval Ravikant says in his book, The Almanack of Naval Ravikant:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;We waste our time with short-term thinking and busy work. Warren Buffett spends a year deciding, in a day acting, that act lasts decades.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The same principle applies to our careers. A small investment of &lt;strong&gt;three years of focused effort can have a lasting impact&lt;/strong&gt; on your life for decades to come.&lt;/p&gt;

&lt;p&gt;Many see the rise of AI as a threat, but I see it as a wave of new opportunities. &lt;strong&gt;AI is opening doors in coding, software development, engineering&lt;/strong&gt;, and countless other fields. The opportunities are endless.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Don't let fear or doubt hold you back&lt;/strong&gt;. You might not land a job at a big tech company right away, &lt;strong&gt;but there are countless other paths to success&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Instead of just learning a specific programming language, &lt;strong&gt;take the time to understand how computers work and sharpen your math skills&lt;/strong&gt;. This will make you a more versatile and adaptable developer, able to thrive in a rapidly changing industry.&lt;/p&gt;

&lt;h3&gt;
  
  
  Beginning your journey
&lt;/h3&gt;

&lt;p&gt;So, how do you get started? &lt;strong&gt;Create a plan and take action&lt;/strong&gt;. Define your goals clearly, break them down into specific steps, and zoom out to look at the big picture.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;What do you want?&lt;/strong&gt; Define your goals clearly.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;How do you get there?&lt;/strong&gt; Break down your goals into specific, actionable steps.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;How long will it take?&lt;/strong&gt; Zoom out and look at the big picture.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Stop living shortsighted. Invest in yourself, and &lt;strong&gt;your future growth is guaranteed&lt;/strong&gt;.&lt;/p&gt;




&lt;p&gt;Don’t forget to subscribe to my exclusive newsletter: 👇&lt;br&gt;
&lt;a href="https://halimshams.substack.com/subscribe" class="ltag_cta ltag_cta--branded" rel="noopener noreferrer"&gt;Subscribe now!&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;— You can follow me on &lt;a href="https://x.com/halimoffi" rel="noopener noreferrer"&gt;X (formerly Twitter)&lt;/a&gt; or &lt;a href="https://www.linkedin.com/in/halimcoding/" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt; as well, where I’ll share short and incredible stuffs out there, so don’t miss those. 🚀&lt;/p&gt;

</description>
      <category>programming</category>
      <category>productivity</category>
    </item>
    <item>
      <title>5 Unique Project Ideas to Make Your Software Engineering Resume Stand Out</title>
      <dc:creator>Halim Shams</dc:creator>
      <pubDate>Wed, 10 Jul 2024 10:02:27 +0000</pubDate>
      <link>https://forem.com/halimshams/5-unique-project-ideas-to-make-your-software-engineering-resume-stand-out-7b</link>
      <guid>https://forem.com/halimshams/5-unique-project-ideas-to-make-your-software-engineering-resume-stand-out-7b</guid>
      <description>&lt;p&gt;Let's face it, most software engineering resumes look pretty similar. The same projects, the same skills, the same qualifications. &lt;strong&gt;If you want to stand out from the crowd, you need to be different.&lt;/strong&gt; One of the easiest ways to do that is to &lt;strong&gt;update your projects and work&lt;/strong&gt; on things that are unique. The best projects are easy to talk about in an interview, &lt;strong&gt;solve some real-world problem&lt;/strong&gt;, and are sufficiently challenging.&lt;/p&gt;

&lt;p&gt;This time, I've collected &lt;strong&gt;five unique project ideas&lt;/strong&gt; that are guaranteed to &lt;strong&gt;make you stand out from the crowd&lt;/strong&gt;. I created this list so that no matter what type of role you're applying for, at least one of these projects will stand out. So, if the first few projects don't sound amazing to you, just keep reading, I’m sure one of them will give you some really good inspiration.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;So let's dive in...&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;1: Automated Trading Bot&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Imagine building an automated trading bot that uses algorithms and techniques to trade cryptocurrency, NFTs, or real assets on a stock exchange. This project is not only interesting but also showcases your ability to use &lt;strong&gt;APIs&lt;/strong&gt;, &lt;strong&gt;execute algorithms&lt;/strong&gt;, and &lt;strong&gt;host the bot&lt;/strong&gt; in a way that responds to events and triggers.&lt;/p&gt;

&lt;p&gt;It doesn't have to work; even a failed project is a great story to tell in an interview, and apart from that, at least you can learn something new.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Success is a collection of better failures.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;2: Thoughts Analysis Tool&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Create a thoughts analysis tool that &lt;strong&gt;scrapes&lt;/strong&gt; data from social media, YouTube comments, or articles, and uses &lt;strong&gt;natural language processing&lt;/strong&gt; to determine the opinion. You can track trends over time, &lt;strong&gt;analyze&lt;/strong&gt; specific events, or even set up the tool to track dynamic data.&lt;/p&gt;

&lt;p&gt;This project is perfect for those who work with Python and want to showcase their data science skills.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;3: Blockchain-Based Voting System&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Build a blockchain-based voting system that illustrates your understanding of &lt;strong&gt;large-scale system design and architecture&lt;/strong&gt;. This project is ideal for Web3 developers, but it also looks great on a standard developer resume.&lt;/p&gt;

&lt;p&gt;You'll learn and showcase your &lt;strong&gt;system design, security, and blockchain networks&lt;/strong&gt; skills, making you a more unique candidate.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;4: Online Multiplayer Game&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Create an online multiplayer game that showcases your skills in &lt;strong&gt;client-server architecture&lt;/strong&gt;, &lt;strong&gt;backend development&lt;/strong&gt;, and &lt;strong&gt;game design&lt;/strong&gt;. You can build a game like online chess, Pictionary, or even a battleship game.&lt;/p&gt;

&lt;p&gt;This project is not only fun but also demonstrates your ability to handle &lt;strong&gt;complex systems and scalability&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;5: Computer Vision Application&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Develop a computer vision application that uses &lt;strong&gt;face detection, object recognition, or image processing&lt;/strong&gt;. You can build a face detection system for a &lt;strong&gt;Raspberry Pi security system&lt;/strong&gt; or even a &lt;strong&gt;cat tracker&lt;/strong&gt; (&lt;em&gt;yes, you read that right!&lt;/em&gt;).&lt;/p&gt;

&lt;p&gt;This project highlights your creativity and ability to work with hardware sensors and computer vision.&lt;/p&gt;




&lt;p&gt;These five project ideas are guaranteed to make your software engineering resume stand out. But keep one thing in mind, It's not about building something complex; &lt;strong&gt;it's about showcasing your skills, creativity, and passion&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Don’t forget to subscribe to my exclusive newsletter: 👇&lt;br&gt;
&lt;a href="https://halimshams.substack.com/subscribe" class="ltag_cta ltag_cta--branded" rel="noopener noreferrer"&gt;Subscribe now!&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;— You can follow me on &lt;a href="https://x.com/halimoffi" rel="noopener noreferrer"&gt;X (formerly Twitter)&lt;/a&gt; or &lt;a href="https://www.linkedin.com/in/halimcoding/" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt; as well, where I’ll share short and incredible stuffs out there, so don’t miss those. 🚀&lt;/p&gt;

</description>
      <category>sideprojects</category>
      <category>resume</category>
      <category>career</category>
      <category>softwareengineering</category>
    </item>
    <item>
      <title>Supercharge Your Python Toolkit with These Powerful Tools</title>
      <dc:creator>Halim Shams</dc:creator>
      <pubDate>Tue, 09 Jul 2024 05:03:24 +0000</pubDate>
      <link>https://forem.com/halimshams/supercharge-your-python-toolkit-with-these-powerful-tools-2b9e</link>
      <guid>https://forem.com/halimshams/supercharge-your-python-toolkit-with-these-powerful-tools-2b9e</guid>
      <description>&lt;p&gt;Python has always been a popular choice for its readability and versatility. But in 2024, the landscape has shifted, and there are some incredible new tools that can make your Python coding experience even better. Let's dive into four must-have tools that will transform you into a Python coding superhero!&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;1. &lt;a href="https://github.com/pydantic/pydantic" rel="noopener noreferrer"&gt;Pydantic&lt;/a&gt;: Ultimate Data Validation&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;It lets you create robust, intelligent, and validated data models with ease. Think of it as a turbocharged way to ensure your data is exactly as you expect it to be. You'll get automatic validation, type checking, and even documentation, all baked into your code. It's a game-changer for anyone working with data in Python.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;2. &lt;a href="https://github.com/astral-sh/ruff" rel="noopener noreferrer"&gt;Ruff&lt;/a&gt;: Superfast Linting and Formatting&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;This Rust-powered tool is incredibly fast, often 10 times faster than its alternatives. Ruff seamlessly integrates into your workflow, making it a breeze to keep your code clean, consistent, and error-free. It's a must-have for any serious Python developer.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;3. &lt;a href="https://github.com/python/mypy" rel="noopener noreferrer"&gt;mypy&lt;/a&gt;: The Type-Checking Guardian Angel&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Type errors can be a real pain in Python. This static type-checker helps you catch errors before your code even runs. It integrates beautifully with your IDE, giving you instant feedback and helping you write code that's more reliable and predictable.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;4. &lt;a href="https://github.com/astral-sh/uv" rel="noopener noreferrer"&gt;uv&lt;/a&gt;: Pip on Steroids&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/astral-sh/uv" rel="noopener noreferrer"&gt;uv&lt;/a&gt;, is another Rust-powered tool that's changing the game for Python package management. It's a drop-in replacement for pip, offering blazing-fast performance and a wealth of advanced features. It makes installing, managing, and resolving dependencies a breeze, saving you time and headaches.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Stay tuned for more Python tips and tricks!&lt;/strong&gt;  Follow me for more content like this. 🚀&lt;/p&gt;

&lt;p&gt;Don’t forget to subscribe to my exclusive newsletter: 👇&lt;br&gt;
&lt;a href="https://halimshams.substack.com/subscribe" class="ltag_cta ltag_cta--branded" rel="noopener noreferrer"&gt;Subscribe now!&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;— You can follow me on &lt;a href="https://x.com/halimoffi" rel="noopener noreferrer"&gt;X (formerly Twitter)&lt;/a&gt; or &lt;a href="https://www.linkedin.com/in/halimcoding/" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt; as well, where I’ll share short and incredible stuffs out there, so don’t miss those. 🚀&lt;/p&gt;

</description>
      <category>python</category>
      <category>productivity</category>
      <category>programming</category>
    </item>
    <item>
      <title>Top 4 Life and Work Principles from Jensen Huang</title>
      <dc:creator>Halim Shams</dc:creator>
      <pubDate>Mon, 08 Jul 2024 05:42:09 +0000</pubDate>
      <link>https://forem.com/halimshams/top-4-life-and-work-principles-from-jensen-huang-55me</link>
      <guid>https://forem.com/halimshams/top-4-life-and-work-principles-from-jensen-huang-55me</guid>
      <description>&lt;p&gt;Jensen Huang is the founder and CEO of NVIDIA. This global tech company is the world's most valuable company worth over $4 trillion.&lt;/p&gt;

&lt;p&gt;I've spent days researching and studying about his brilliant leader. I've come to the conclusion that success is not random, it's how hard you try and how smart you work.&lt;/p&gt;

&lt;p&gt;I've collected 4 of the most underrated life and work principles from Jensen you Must Know:&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Empower Amazing People
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;"My goal is to create the conditions where amazing people come to do their life's work."&lt;/em&gt; - Jensen Huang&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;He believes in empowering teams with information, public problem-solving, and a full-stack company approach.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Embrace the Struggle
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;"I wish upon you ample doses of pain and suffering."&lt;/em&gt; - Jensen Huang&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Jensen says the best jobs aren't always the happiest. Greatness comes through pain and suffering.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Keep Torturing
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;“I very seldom fire people — I’d rather torture them to greatness.”&lt;/em&gt; - Jensen Huang&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Jensen would rather "torture" people than firing them because he don't like to give up easily on people. He believes in the power of learning and growth.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Expect More, Demand Less
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;"People with very high expectations have very low resilience."&lt;/em&gt; - Jensen Huang&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Jensen reminds us that without resilience success is not possible. He believes that not task is beneath us, and that we should never stop improving.&lt;/p&gt;




&lt;p&gt;That’s all for this. If you find it useful, don’t forget to share it with your fellow developers as well.&lt;/p&gt;

&lt;p&gt;Don’t forget to subscribe to my exclusive newsletter: 👇&lt;br&gt;
&lt;a href="https://halimshams.substack.com/subscribe" class="ltag_cta ltag_cta--branded" rel="noopener noreferrer"&gt;Subscribe now!&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;— You can follow me on &lt;a href="https://x.com/halimoffi" rel="noopener noreferrer"&gt;X (formerly Twitter)&lt;/a&gt; or &lt;a href="https://www.linkedin.com/in/halimcoding/" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt; as well, where I’ll share short and incredible stuffs out there, so don’t miss those. 🚀&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>softwaredevelopment</category>
    </item>
    <item>
      <title>2-Minute Rule to Become a Master at Coding — Atomic Habits</title>
      <dc:creator>Halim Shams</dc:creator>
      <pubDate>Fri, 05 Jul 2024 11:06:20 +0000</pubDate>
      <link>https://forem.com/halimshams/2-minute-rule-to-become-a-master-at-coding-atomic-habits-1e1b</link>
      <guid>https://forem.com/halimshams/2-minute-rule-to-become-a-master-at-coding-atomic-habits-1e1b</guid>
      <description>&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3mveiwiekcy24yd6hvpp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3mveiwiekcy24yd6hvpp.png" alt="An Article by — Halim Shams" width="800" height="420"&gt;&lt;/a&gt;&lt;br&gt;
Have you ever started watching an online video tutorial and, in the middle of that video, the tutorial becomes boring for you? Or you always tell yourself that this time you’re going to finish an online course, but when you sit down and start learning, it feels like any other tedious task like washing dishes and laundry. And at the end, you find it impossible to stay productive and make progress.&lt;/p&gt;

&lt;p&gt;The question is: &lt;strong&gt;“How can I stay motivated when learning to code?”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That’s when &lt;strong&gt;Atomic Habits&lt;/strong&gt; by &lt;strong&gt;James Clear&lt;/strong&gt; comes in. If you haven’t heard about this book, you probably aren’t into self-improvement books by any chance. In this book, &lt;strong&gt;James Clear&lt;/strong&gt; answers questions like, What is a habit loop? How do I prime my environment to make progress on my goals? and How do I use Dopamine spikes to stick to good habits?&lt;/p&gt;

&lt;p&gt;By answering these questions, I will show you how you can build the revolutionary habit of learning programming.&lt;/p&gt;

&lt;p&gt;Let’s delve in…&lt;/p&gt;

&lt;p&gt;...&lt;/p&gt;

&lt;p&gt;Imagine a plane taking off from Los Angeles for New York. Just before takeoff, the pilot changes the flight path by &lt;strong&gt;3.5 degrees&lt;/strong&gt;, which is trivial. It is such a small change that nobody in the place can notice anything. When the plane lands, the passengers find themselves doing a sniff test because they are walking on the clean streets of Washington, DC, instead of New York. The point is that very small changes can entirely change the trajectory of our lives. And just like the passengers, we do not see the immediate results of these changes, but in the long run, the combined effect of these tiny changes and the final outcome can be significantly different.&lt;/p&gt;

&lt;p&gt;As a novice programmer, you would think that you need to build something revolutionary to make it into the tech industry, but in reality, all you need to do is take small steps toward your goal everyday and you will be there before you even know it.&lt;/p&gt;

&lt;p&gt;If you keep scrolling Instagram or watching YouTube, you will be no better programmer than today in one year. Build tiny atomic habits that help you learn programming everyday and you’ll be very close to landing that Software Engineer job in one year, beyond the shadow of a doubt.&lt;/p&gt;

&lt;p&gt;Building habits is easy, but sticking to them is where most programmers struggle and can’t stay consistent. When you start to learn programming, you expect to see a linear improvement, but here is what actually happens:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6uvn5yedctqd0qi6s3as.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6uvn5yedctqd0qi6s3as.png" alt="Graph indicating the reality of making progress" width="800" height="450"&gt;&lt;/a&gt;&lt;br&gt;
At the beginning, you’ll not see any results. James Clear calls this part of the graph “The valley of disappointment”. This is where most people lose motivation, give up, and go back to their old habits. But in reality, the returns for your efforts are actually delayed. Once you pass this “Disappointment phase”, you’ll feel like a superhuman. Learning a new programming language, building projects, and getting into various jobs will suddenly come naturally to you. And when you look back at the first piece of code you wrote, you’ll definitely laugh at yourself.&lt;/p&gt;


&lt;h2&gt;
  
  
  Exclusive for My Blog Readers!
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Unlock Your Programming Potential!&lt;/strong&gt; Subscribe to our newsletter for game-changing tips, productivity hacks, and insightful advice tailored exclusively for passionate programmers like you. &lt;strong&gt;Don’t miss out on content that will transform your coding journey&lt;/strong&gt; — join our community today!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://halimshams.substack.com/" class="ltag_cta ltag_cta--branded"&gt;Subscribe now!&lt;/a&gt;
&lt;/p&gt;




&lt;h2&gt;
  
  
  Building Habit
&lt;/h2&gt;

&lt;p&gt;To build a habit, you first need to understand the concepts of the “Habit Loop”. The habit loop contains Cue, Craving, Response, and Reward. That’s the loop that builds any good or bad habit that we repeat over and over again.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk7a9uxoxeefrc5yn7ne8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk7a9uxoxeefrc5yn7ne8.png" alt="The Habit Loop" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Let’s understand the Habit Loop by illustrating a bad habit we all suffer from. Your phone is next to you and vibrates (Cue), you crave to see who the notification is from (Craving), you pick up the phone (Response), you spend at least 30 minutes scrolling Instagram (Reward).&lt;/p&gt;

&lt;p&gt;Or imagine that you feel bored with the video tutorial (Cue), you want to see something entertaining (Crave), you pick up the phone (Response), you watched entertaining MrBeast videos for another hour (Reward).&lt;/p&gt;

&lt;p&gt;Soon, your brain starts making connections between watching YouTube and getting bored with the tutorial. And you end up building the bad habit of wasting time during your programming sessions.&lt;/p&gt;

&lt;p&gt;The same way you can use the same Habit Loop to build decent habits, you can use your own laptop as a Cue to learn programming. James Clear mentions this in his book: You should make your Cue obvious by placing it where it catches your eye every time.&lt;/p&gt;

&lt;p&gt;Cue alone cannot be sufficient; you also need to use &lt;strong&gt;Implementation Intentions&lt;/strong&gt; to your advantage. &lt;strong&gt;Studies have shown that the main reason most people don’t stick to good habits is not because they lack motivation but because they don’t have clarity about what they want to achieve.&lt;/strong&gt; When you say “Tomorrow, I will learn programming”, it’s just a stupid dream that has no clarity. So, instead of just saying that, use the &lt;strong&gt;Habit Stacking&lt;/strong&gt; methodology. Next time you decide to learn programming, don’t just say, “I want to learn programming.” Instead, stack it with another task, like, just after brushing my teeth, I’ll sit down and write code for 2 straight hours. This powerful process is called habit stacking.&lt;/p&gt;

&lt;h2&gt;
  
  
  The 2 Minute Rule
&lt;/h2&gt;

&lt;p&gt;To build the habit of programming sufficiently, the 2-Minute Rule will get you there. When you set unrealistic goals for yourself, it becomes tough to stay motivated to work on them.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Make habit building easy by taking small steps every day.&lt;/em&gt; — James Clear&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;James Clear recommends starting with only two minutes a day. For example, if you want to build the habit of reading books, you can start by reading for just 2 minutes a day and gradually increase the number of minutes in the process.&lt;/p&gt;

&lt;p&gt;The same goes with the programming, you’ll NOT become an expert programmer overnight. Instead of watching the entire 40+ hour course in 2 days, try to get the most out of it by watching a single video of it and then implementing what you’ve learned. By doing so, you’ll prevent frustration and build a long-term habit of learning new things efficiently.&lt;/p&gt;




&lt;p&gt;That’s it for this article. I hope you enjoyed it and learned something new from it.&lt;/p&gt;

&lt;p&gt;Don’t forget to share it with the community, too, so they can also benefit from this context.&lt;/p&gt;

&lt;p&gt;Don’t forget to subscribe to my exclusive newsletter just for My Blog readers: 👇&lt;/p&gt;

&lt;p&gt;&lt;a href="https://halimshams.substack.com/" class="ltag_cta ltag_cta--branded"&gt;Subscribe now!&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;— You can follow me on &lt;a href="https://x.com/HalimOFFI"&gt;Twitter/X&lt;/a&gt; and &lt;a href="https://www.linkedin.com/in/halimcoding"&gt;LinkedIn&lt;/a&gt; as well, where I’ll share short and incredible stuffs out there, so don’t miss those. 🚀&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>coding</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Learn to Create SVG by Coding in Minutes</title>
      <dc:creator>Halim Shams</dc:creator>
      <pubDate>Thu, 04 Jul 2024 05:21:59 +0000</pubDate>
      <link>https://forem.com/halimshams/learn-to-create-svg-by-coding-in-minutes-4955</link>
      <guid>https://forem.com/halimshams/learn-to-create-svg-by-coding-in-minutes-4955</guid>
      <description>&lt;p&gt;&lt;strong&gt;&lt;em&gt;Learn full SVG creating by coding and adding effects to it like animations.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A-qLA36JMdX_jzWw3vrQMqA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A-qLA36JMdX_jzWw3vrQMqA.png" alt="A post by Halim Shams"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Scalable Vector Graphics or SVG is an image format that is like HTML for 2d graphics.&lt;/p&gt;

&lt;p&gt;They differ from raster images like PNG, JPEG… that is use a grid of tiny pixels to create an image and as you zoom in, the pixels become larger making the image grainy in contrast, a vector image can be scaled to any size without losing its resolution because instead of fixed pixels its appearance is based on geometry.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AIJT-qHsIGtqxiKgu4x1zLA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AIJT-qHsIGtqxiKgu4x1zLA.png" alt="The Different Between SVG and Raster Image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can make SVG by tools like Figma or illustrator, or by writing the code directly, which is easier than you might think and opens the door to animation and interactivity.&lt;/p&gt;

&lt;p&gt;Create one by opening an SVG tag, then define a coordinate system with the &lt;em&gt;“viewBox”&lt;/em&gt; attribute that gives us a frame with a &lt;em&gt;“width”&lt;/em&gt; and &lt;em&gt;“height”&lt;/em&gt; of 100 units on which we can draw graphics.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A7qMIZPG4u2VNs1rWZcyhkA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A7qMIZPG4u2VNs1rWZcyhkA.png" alt="Starting with SVG tag"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Draw basic shapes by adding elements like rectangle, circle and polygon.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A1sK-tfEOjSkInpdZwsahag.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A1sK-tfEOjSkInpdZwsahag.png" alt="Basic Shapes in SVG"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Position the rectangle by its &lt;em&gt;“x-y”&lt;/em&gt; values on the &lt;em&gt;“viewBox”&lt;/em&gt;, then give it a size which can take value that are either explicit or responsive, we can change the color of the shape by defining its &lt;em&gt;“fill”&lt;/em&gt; or define an outline with the &lt;em&gt;“stroke”&lt;/em&gt; attribute.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Az6ubz16MBY7aZ8qoAnUMeg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Az6ubz16MBY7aZ8qoAnUMeg.png" alt="Designing your first rectangle"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And if our styling gets too complex, we can extract everything into a separate CSS stylesheet, by applying a class to it just like any HTML element.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Ax7kfpjXwtuOO2nftll0p9Q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2Ax7kfpjXwtuOO2nftll0p9Q.png" alt="Extracting into CSS stylesheet"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We have the full power of CSS at our fingertips, which means we can react to events on the shapes and then change their styling or animation accordingly.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AbsdGLg7HpjC3yXqOhhAL8A.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AbsdGLg7HpjC3yXqOhhAL8A.png" alt="Adding some effects to our SVG"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;But most graphics are more than just basic shapes, they contain complex art work with all kinds of twists and turns, and that’s where the path element comes in.&lt;/p&gt;

&lt;p&gt;The shape of a path is determined by one attribute &lt;em&gt;“d”&lt;/em&gt; for draw. Coding a path is like controlling the tip of a pen with a series of commands.&lt;/p&gt;

&lt;p&gt;The most basic command is &lt;em&gt;“M”&lt;/em&gt; for move which will move the pen tip to an &lt;em&gt;“x-y”&lt;/em&gt; coordinate, an upper letter means move relative to the view box and a lowercase letter means move relative to the last point in the path, but &lt;em&gt;“move (M)”&lt;/em&gt; doesn’t draw anything.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AIzf3tth-ApjynU4gg73MCw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AIzf3tth-ApjynU4gg73MCw.png" alt="The Move attribute"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To put the pen tip down on the paper and draw something use the &lt;em&gt;“I”&lt;/em&gt; command, it works exactly like &lt;em&gt;“move”&lt;/em&gt; but draws a line that can be styled.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AnRh1ftSOlVm6uEiVi13K6w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2AnRh1ftSOlVm6uEiVi13K6w.png" alt="The Line attribute to start drawing"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Straight lines are cool but what if we wanted to add a curve like we would with the handles in illustrator, Create Bézier curves with the &lt;em&gt;“C”&lt;/em&gt; and &lt;em&gt;“Q”&lt;/em&gt; commands, define the position of two control points, then &lt;em&gt;“x”&lt;/em&gt; and &lt;em&gt;“y”&lt;/em&gt; coordinates where the curve should end, then SVG will automatically calculate a smooth curve for you at any scale.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A8RDmA0g_nyjjO60Bp7o9qQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1024%2F1%2A8RDmA0g_nyjjO60Bp7o9qQ.png" alt="Creating Bézier curves in SVG"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;This was &lt;strong&gt;SVG&lt;/strong&gt; (Scalable Vector Graphics) in minutes.&lt;/p&gt;

&lt;p&gt;Hope reading this short article helped you to know what really SVG is and able to create a simple SVG. 😊&lt;/p&gt;

&lt;p&gt;Don’t forget to support and inspire me by just following me, clapping and sharing your experience in the comment section. 🥰&lt;/p&gt;

&lt;p&gt;Thanks for reading till the end and if you see any issue with this article you can share with me in the comments. 🙏&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;… HAPPY CODDING :) …&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;— You can follow me on &lt;a href="https://x.com/HalimOFFI" rel="noopener noreferrer"&gt;Twitter/X&lt;/a&gt; also.😊&lt;br&gt;
— Check out my &lt;a href="https://halimshams.substack.com/" rel="noopener noreferrer"&gt;newsletter&lt;/a&gt; as well! 💛&lt;/p&gt;

</description>
      <category>coding</category>
      <category>svgcoding</category>
      <category>animation</category>
      <category>webdev</category>
    </item>
    <item>
      <title>JavaScript ES6 #Challenge</title>
      <dc:creator>Halim Shams</dc:creator>
      <pubDate>Sun, 15 May 2022 05:44:47 +0000</pubDate>
      <link>https://forem.com/halimshams/javascript-es6-challenge-47bj</link>
      <guid>https://forem.com/halimshams/javascript-es6-challenge-47bj</guid>
      <description>&lt;p&gt;**&lt;/p&gt;

&lt;h2&gt;
  
  
  What is the output of code below:
&lt;/h2&gt;

&lt;p&gt;**&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;let x, y;

[x=5, y=7] = [1];
console.log(x);
console.log(y);
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;`&lt;br&gt;
Follow for more challenges ahead!!!😎&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>challenge</category>
    </item>
  </channel>
</rss>
