<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[Artificial Corner: AI & Python 🐍]]></title><description><![CDATA[For Programmers: Learn Python, coding concepts, automation, and create AI apps (even if you're a complete beginner)]]></description><link>https://artificialcorner.com/s/ai-and-python</link><image><url>https://substackcdn.com/image/fetch/$s_!JsL9!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3e1cd4a-d846-4e20-ad60-d8573787c94d_1080x1080.png</url><title>Artificial Corner: AI &amp; Python 🐍</title><link>https://artificialcorner.com/s/ai-and-python</link></image><generator>Substack</generator><lastBuildDate>Wed, 22 Apr 2026 06:55:27 GMT</lastBuildDate><atom:link href="https://artificialcorner.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Frank Andrade]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[artificialcorner@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[artificialcorner@substack.com]]></itunes:email><itunes:name><![CDATA[Frank Andrade]]></itunes:name></itunes:owner><itunes:author><![CDATA[Frank Andrade]]></itunes:author><googleplay:owner><![CDATA[artificialcorner@substack.com]]></googleplay:owner><googleplay:email><![CDATA[artificialcorner@substack.com]]></googleplay:email><googleplay:author><![CDATA[Frank Andrade]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Python in Excel: Why It Matters for Data Analysts]]></title><description><![CDATA[Here's another reason to learn Python in 2025.]]></description><link>https://artificialcorner.com/p/python-in-excel-why-it-matters-for</link><guid isPermaLink="false">https://artificialcorner.com/p/python-in-excel-why-it-matters-for</guid><dc:creator><![CDATA[Frank Andrade]]></dc:creator><pubDate>Mon, 09 Jun 2025 17:08:35 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!bycS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05afb932-23d2-4b7d-bf31-26c6000b3b1e_800x530.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!bycS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05afb932-23d2-4b7d-bf31-26c6000b3b1e_800x530.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bycS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05afb932-23d2-4b7d-bf31-26c6000b3b1e_800x530.jpeg 424w, https://substackcdn.com/image/fetch/$s_!bycS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05afb932-23d2-4b7d-bf31-26c6000b3b1e_800x530.jpeg 848w, https://substackcdn.com/image/fetch/$s_!bycS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05afb932-23d2-4b7d-bf31-26c6000b3b1e_800x530.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!bycS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05afb932-23d2-4b7d-bf31-26c6000b3b1e_800x530.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bycS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05afb932-23d2-4b7d-bf31-26c6000b3b1e_800x530.jpeg" width="800" height="530" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/05afb932-23d2-4b7d-bf31-26c6000b3b1e_800x530.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:530,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!bycS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05afb932-23d2-4b7d-bf31-26c6000b3b1e_800x530.jpeg 424w, https://substackcdn.com/image/fetch/$s_!bycS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05afb932-23d2-4b7d-bf31-26c6000b3b1e_800x530.jpeg 848w, https://substackcdn.com/image/fetch/$s_!bycS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05afb932-23d2-4b7d-bf31-26c6000b3b1e_800x530.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!bycS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05afb932-23d2-4b7d-bf31-26c6000b3b1e_800x530.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Image credit: <a href="https://www.pexels.com/photo/close-up-photo-of-survey-spreadsheet-590022/">Pexels</a></figcaption></figure></div><p>Two years ago, Microsoft announced Python in Excel.</p><p>Microsoft said it was a significant evolution in the analytical capabilities available within Excel. They combined the power of Python with the flexibility of Excel.</p><p>This integration is another good reason to learn Python in 2025.</p><p>With this integration, you can write Python code in Excel cells, create advanced visualizations using libraries such as matplotlib and seaborn, and even apply machine learning techniques using libraries like scikit-learn and statsmodels.</p><p>Python in Excel will change the way Excel analysts work. Just a few months ago, it became generally available to eligible <a href="https://techcommunity.microsoft.com/blog/excelblog/python-in-excel-%e2%80%93-available-now/4240212">Enterprise and Business users</a>. If you&#8217;ve recently taken one of my Python courses or are unsure whether to learn Python in 2025, keep reading.</p><blockquote><p><em>Artificial Corner is a reader-supported publication. Please, consider becoming a free or paid subscriber&#128071;</em> </p></blockquote><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?"><span>Subscribe now</span></a></p><h4>Excel analysts will have to learn to code</h4><p>Excel is probably the most popular tool for data an&#8230;</p>
      <p>
          <a href="https://artificialcorner.com/p/python-in-excel-why-it-matters-for">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[A Free 17-Hour Course to Learn Python for Data Science (for Beginners)]]></title><description><![CDATA[Learn data science with Python from scratch.]]></description><link>https://artificialcorner.com/p/a-free-17-hour-course-to-learn-python</link><guid isPermaLink="false">https://artificialcorner.com/p/a-free-17-hour-course-to-learn-python</guid><dc:creator><![CDATA[Frank Andrade]]></dc:creator><pubDate>Thu, 29 May 2025 14:41:32 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!TBvx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f6b617b-7b8b-4abc-94ed-27ad7e40cb11_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!TBvx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f6b617b-7b8b-4abc-94ed-27ad7e40cb11_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!TBvx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f6b617b-7b8b-4abc-94ed-27ad7e40cb11_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!TBvx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f6b617b-7b8b-4abc-94ed-27ad7e40cb11_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!TBvx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f6b617b-7b8b-4abc-94ed-27ad7e40cb11_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!TBvx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f6b617b-7b8b-4abc-94ed-27ad7e40cb11_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!TBvx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f6b617b-7b8b-4abc-94ed-27ad7e40cb11_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9f6b617b-7b8b-4abc-94ed-27ad7e40cb11_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2241210,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://artificialcorner.com/i/163911729?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f6b617b-7b8b-4abc-94ed-27ad7e40cb11_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!TBvx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f6b617b-7b8b-4abc-94ed-27ad7e40cb11_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!TBvx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f6b617b-7b8b-4abc-94ed-27ad7e40cb11_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!TBvx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f6b617b-7b8b-4abc-94ed-27ad7e40cb11_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!TBvx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9f6b617b-7b8b-4abc-94ed-27ad7e40cb11_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Image created with ChatGPT</figcaption></figure></div><p>Learning Python is a fundamental first step in becoming a data scientist. Python&#8217;s simplicity and ecosystem have made it the most popular programming language for data science.</p><p>That&#8217;s why I created a <a href="https://youtu.be/CMEWVn1uZpQ?si=z1TrsslzSys7oumB">free 17-hour video course</a> to learn it from scratch!</p><p>This complete course for absolute beginners goes from learning basic Python to applying machine learning on a text classification problem. Each topic builds on the previous ones, reflecting the real workflow of data science projects.</p><p>Let&#8217;s see each module in more detail!</p><blockquote><p>To get weekly articles like this, subscribe &#128071; After subscribing, check my welcome email to download my Python, ChatGPT, and more cheat sheets :)</p></blockquote><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?"><span>Subscribe now</span></a></p><h4>Module 1: Python Basics for Data Science</h4><p>For those new to programming, a crash course in core Python is crucial before diving into data science tools.</p><p>In this introductory module, we&#8217;ll learn basic Python syntax, data types (numbers, strings, lists, dictionaries), control structures (loops and conditionals), and functions. Mastering these basics will provide a strong foundation to write and understand code for data analysis tasks.</p><p>What does coding in Python look like?</p><pre><code># Basic Python operations

x = 5
y = 3
print("Sum:", x + y)

# Looping through a list

fruits = ["Apple", "Banana", "Cherry"]
for fruit in fruits:
    print("I like", fruit)</code></pre><p>Here&#8217;s the link to watch the first module of this course</p><p><strong><a href="https://youtu.be/CMEWVn1uZpQ?si=xGrTD8fkjmlvBuum&amp;t=1710">Link: Module 1 - Python Basics for Data Science</a></strong></p><h4>Module 2: Introduction to Pandas and NumPy</h4><p>With core Python skills in place, the next step is learning NumPy and pandas, two libraries that form the backbone of data science in Python. These libraries provide high-performance data structures and functions that make it vastly easier to work with data.</p><p>Why are Pandas and NumPy essential? Together, they allow data scientists to load, manipulate, and analyze data efficiently. For example, with pandas one can read a CSV file into a DataFrame in one line of code and then easily filter or summarize it. NumPy provides the numerical foundation, enabling operations like vectorized calculations (applying a formula to an entire array) that are both convenient and fast. </p><p>The snippet below shows how one might use NumPy and pandas in practice. We create a NumPy array and compute a statistic, and we create a pandas DataFrame to perform an operation on a column:</p><pre><code>import numpy as np
import pandas as pd

# Using NumPy for numerical computations
data = np.array([1, 2, 3, 4])
print("NumPy mean:", data.mean())

# Using pandas for tabular data manipulation
df = pd.DataFrame({'A': [10, 20, 30],
                   'B': [2, 4, 6]})
print("DataFrame sum of A:", df['A'].sum())</code></pre><p>Here&#8217;s the link to watch the second module of this course:</p><p><strong><a href="https://youtu.be/CMEWVn1uZpQ?si=6sxfM-VXhHN4mqw8&amp;t=6354">Link: Module 2 - Introduction to Pandas and NumPy</a></strong></p><h4>Module 3:  Web Scraping with Pandas (Project #1)</h4><p>The goal of this first project is to learn how to gather data from the web and import it into Python for analysis using pandas.</p><p>In many real-world situations, data is not neatly provided as a file &#8211; it might be embedded in web pages (HTML tables, lists, etc.) or available through web APIs. Web scraping is the technique of extracting data from websites, and it&#8217;s an essential skill for data scientists to build their own datasets. This project teaches beginners how to perform basic web scraping and load the data into a pandas DataFrame, which they can then analyze.</p><p>Pandas provides convenient functions for simple scraping tasks. For example, if a Wikipedia page contains a table, <code>read_html</code> can often fetch it directly. For more complex web scraping tasks &#8211; such as handling JavaScript, or scraping non-tabular data, we would need more powerful libraries like Selenium or Scrapy. That said,  pandas will give you a gentle introduction to web scraping.</p><p>Web scraping with pandas is sometimes as easy as this:</p><pre><code>import pandas as pd

url = "site link"
tables = pd.read_html(url)
df = tables[0]                    
print(df.head())    </code></pre><p>Here&#8217;s the link to watch the third module of this course:</p><p><strong><a href="https://youtu.be/CMEWVn1uZpQ?si=CPf0xYd2j_YoxWvh&amp;t=12894">Link: Module 3 - Web Scraping with Pandas (Project #1)</a></strong></p><h4>Module 4: Filtering Data &amp; Data Extraction</h4><p>Once data is loaded into a pandas DataFrame, a fundamental operation is filtering the data. &#8220;Filtering&#8221; means selecting only those subsets of data (rows or columns) that meet certain criteria</p><p>Why is filtering essential? Real datasets often contain more information than you need for a particular analysis. For example, if you have a dataset of worldwide economic indicators but you are only studying data for a specific country, you would filter the dataset to that country. Similarly, if you have collected time-series data for a range of dates but only need the last year of data, filtering by date is necessary. Also, in data cleaning (a module we&#8217;ll see later), filtering is used to remove outliers or invalid entries.</p><p>Here&#8217;s what filtering data looks like:</p><pre><code>import pandas as pd

df = pd.DataFrame({'Name': ['Alice', 'Bob', 'Cathy'],
                   'Age':  [24, 27, 19]})

adults = df[df['Age'] &gt; 20]   # filter rows where Age &gt; 20
print(adults)</code></pre><p>Here&#8217;s the link to watch the fourth module of this course:</p><p><strong><a href="https://youtu.be/CMEWVn1uZpQ?si=8NQF_yBEh3Pa5VtK&amp;t=15349">Link: Module 4 - Filtering Data &amp; Data Extraction</a></strong></p><h4>Module 5: Making Data Visualizations (Project #2)</h4><p>Data visualization is an important part of data science. It allows us to translate complex datasets into visual representations that are easier for the human brain to understand.  By plotting data, we can quickly identify patterns, trends, and outliers that might not be obvious from raw numbers. Visualization is also key to communicating results to others. A well-crafted chart can convey insights that would be hard to glean from tables.</p><p>Python offers different libraries for data visualization, such as Matplotlib and Seaborn. That said, probably the easiest way to make visualizations with Python is using the pandas library. </p><p>This second project consists in making visualizations such as barplots, histograms, scatterplots, and more with pandas.</p><p><strong><a href="https://youtu.be/CMEWVn1uZpQ?si=SzbY2aNXAefkCiT8&amp;t=29438">Link: Module 5 - Making Data Visualizations (Project #2)</a></strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?"><span>Subscribe now</span></a></p><h4>Module 6: GroupBy, Aggregate Function, and Concatenation</h4><p>Many analytical questions are of the form &#8220;what is the value by some category?&#8221; For example,  &#8220;What is the average income by country?&#8221;, &#8220;How many transactions per day of the week?&#8221; or &#8220;What is the total sales for each product category?&#8220;</p><p>GroupBy allows you to answer these by aggregating data within each subgroup.</p><p>Common aggregation methods include <code>.sum()</code>, <code>.mean()</code>, and <code>.count()</code>, among others. For example, if you want to get the average income for each country present in a dataframe, you&#8217;d do something like this:</p><pre><code><code>df.groupby('Country')['Income'].mean()</code> </code></pre><p>Here&#8217;s the link to watch the fourth module of this course:</p><p><strong><a href="https://youtu.be/CMEWVn1uZpQ?si=T4k08jddOf_5SwYF&amp;t=33539">Link: Module 6 - GroupBy and Aggregate Function</a></strong></p><h4>Module 7: Regular Expressions</h4><p>Data scientists often work with textual data, whether it&#8217;s extracting specific information from strings or cleaning and preprocessing raw text for analysis. Regular expressions (regex) are a powerful tool for such tasks. </p><p>A regular expression is essentially a pattern that describes a set of strings. With regex, you can test if a string matches a pattern, find all substrings that match, or replace parts of a string that match a pattern.</p><p>Here&#8217;s an example of how to use regex to filter data inside a dataframe.</p><pre><code>import pandas as pd

# Small dataset
data = {
    'Name': ['Alan', 'Bob', 'Ann'],
    'Age': [25, 22, 27]
}

df = pd.DataFrame(data)

# Using regex to filter names that start with 'A' and end with 'n'
filtered_df = df[df['Name'].str.contains(r'^A.*n$', regex=True)]

print(filtered_df)</code></pre><p>Here&#8217;s the link to watch the seventh module of this course:</p><p><strong><a href="https://youtu.be/CMEWVn1uZpQ?si=_HJkS-thP2REKPtY&amp;t=44326">Link: Module 7 - Regular Expressions</a></strong></p><h4>Module 8: Data Cleaning with Pandas (Project #3)</h4><p>&#8220;Garbage in, garbage out&#8221; is a saying that highlights the importance of data cleaning.</p><p>Real-world data is often noisy, incomplete, or inconsistent. Before any analysis or modeling, this raw data needs to be cleaned and structured properly. Data professionals spend a large portion of their time on data cleaning &#8211; by some estimates, around 80% of a data scientist&#8217;s time is spent preparing and cleaning data. Data cleaning is thus one of the <em>essential steps</em> in the data science process, as the quality of insights you can draw is directly linked to the quality of your data.</p><p>In this third project, we will use pandas to perform common data cleaning tasks on a messy dataset.</p><p><strong><a href="https://youtu.be/CMEWVn1uZpQ?si=0MMKzK2XS2iYuQdr&amp;t=47860">Link: Module 8&#8202;&#8212;&#8202;Data Cleaning with Pandas (Project #3)</a></strong></p><h4>Module 9: Machine Learning with Python</h4><p>After cleaning and exploring data, the next major step in a data science journey is often to build predictive models &#8211; in other words, to apply machine learning (ML).</p><p>Machine learning allows data scientists to extract patterns from data and make predictions or decisions without being explicitly programmed with rules. In practical terms, this is how we go from analyzing what has happened (descriptive analytics) to predicting what might happen (predictive analytics) or making automated decisions (like classifying an email as spam or not spam). Understanding ML opens up a huge range of applications: you can train a model to predict housing prices from past data, classify images, cluster customers into groups, etc.</p><p>In the video below, we&#8217;ll learn the core concepts of machine learning while building a linear regression model in Python. We'll use 2 basic machine learning libraries in Python: statsmodels and sklearn. </p><p><strong><a href="https://youtu.be/CMEWVn1uZpQ?si=u3jRaDG5O9vYM9E-&amp;t=53612">Link: Module 9 - Machine Learning with Python</a></strong></p><h4>Module 10: Text Classification (Project #4)</h4><p>The goal of this last project is to create a machine learning model that will predict whether a movie review is positive or negative. This is known as binary text classification and will help us explore the scikit-learn library while building a basic machine learning model from scratch.</p><p>Text classification is a supervised learning task where the input features are not numeric measurements but text strings. Thus, it introduces the concept of feature extraction from text. Typically, one must convert text into a numerical representation before feeding it to a machine learning model. The most common approach is the <em>Bag-of-Words</em> model or its variant TF-IDF:</p><ul><li><p>Bag-of-Words: We create features from word occurrences: for each document (text example), we count how often each word from a vocabulary appears. This transforms the text into a vector of numbers (word counts). For example, if our vocabulary is {"bad", "good", "great", "terrible"}, a review "This product is good and great" might transform into [0, 1, 1, 0]</p></li><li><p>TF-IDF: It&#8217;s a refinement of word counts that downweights common words and upweights rare but potentially informative words.</p></li></ul><p>These and more new concepts are covered in the project below.</p><p><strong><a href="https://youtu.be/CMEWVn1uZpQ?si=cHvz1eyPF4dbCxuU&amp;t=55233">Link: Module 10 - Text Classification (Project #4)</a></strong></p><div><hr></div><p>That&#8217;s it! Let your Python for data science journey begin</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?"><span>Subscribe now</span></a></p>]]></content:encoded></item><item><title><![CDATA[How I’d Learn Python faster using AI]]></title><description><![CDATA[How I&#8217;d use ChatGPT, Gemini, and NotebookLM to learn Python.]]></description><link>https://artificialcorner.com/p/learn-python-ai</link><guid isPermaLink="false">https://artificialcorner.com/p/learn-python-ai</guid><dc:creator><![CDATA[Frank Andrade]]></dc:creator><pubDate>Fri, 25 Apr 2025 15:03:02 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!6qAi!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F437d7fc7-d9bb-4684-834b-5ebb2c0c748f_1024x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6qAi!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F437d7fc7-d9bb-4684-834b-5ebb2c0c748f_1024x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6qAi!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F437d7fc7-d9bb-4684-834b-5ebb2c0c748f_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!6qAi!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F437d7fc7-d9bb-4684-834b-5ebb2c0c748f_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!6qAi!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F437d7fc7-d9bb-4684-834b-5ebb2c0c748f_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!6qAi!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F437d7fc7-d9bb-4684-834b-5ebb2c0c748f_1024x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6qAi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F437d7fc7-d9bb-4684-834b-5ebb2c0c748f_1024x1024.png" width="1024" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/437d7fc7-d9bb-4684-834b-5ebb2c0c748f_1024x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2358360,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6qAi!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F437d7fc7-d9bb-4684-834b-5ebb2c0c748f_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!6qAi!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F437d7fc7-d9bb-4684-834b-5ebb2c0c748f_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!6qAi!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F437d7fc7-d9bb-4684-834b-5ebb2c0c748f_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!6qAi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F437d7fc7-d9bb-4684-834b-5ebb2c0c748f_1024x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Source: Midjoruney</figcaption></figure></div><blockquote><p><em>This is an article written by me that was published on AI Supremacy some weeks ago. Today I&#8217;m making this article free for all of you. </em></p><p><em>If you&#8217;re new, subscribe to get weekly articles like this&#128071;</em></p></blockquote><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?"><span>Subscribe now</span></a></p><p>Tools we know well like ChatGPT and Gemini can make learning to code easier and less frustrating. Also, less-known tools like NotebookLM are changing how we learn new subjects and coding is one of them.</p><p>In this article, we&#8217;ll explore how to make the most of these AI tools for learning to code. Since I often write about the Python programming language, I&#8217;ll use Python as an example. However, everything discussed here can be applied to other programming languages as well.</p><h3>ChatGPT Canvas: Run and debug your code within ChatGPT</h3><p>Canvas is a new interface for working with ChatGPT on writing and coding projects. Thanks to Canvas, now you can use ChatGPT as if it was your AI code editor.</p><p>This is a feature that I&#8217;d definitely use if I had to learn Python again because it allows us to do many things within ChatGPT, such as running Python code, debugging code, and asking in-line feedback and suggestions.</p><p>To use Canvas, just ask ChatGPT to write a simple &#8220;Hello World&#8221; script, and then click on view tools and select &#8220;Canvas.&#8221; Once you press enter, you&#8217;ll see a panel on the right. That&#8217;s your Python environment where you can test your code. Just click on run every time you modify your code, and the results will be printed on the console below. </p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;ef2b3f05-4569-41a2-aef9-a3e74e8513d6&quot;,&quot;duration&quot;:null}"></div><p>If you&#8217;re new to coding, things like installing Python, and setting up your code editor and environment might seem intimidating and frustrating at first. Fortunately, now you can skip these steps and focus on learning to code thanks to ChatGPT Canvas. </p><p>You can also import Python libraries using ChatGPT Canvas. In the example below, Canvas imports matplotlib and numpy to do a task common in data analysis, which is plotting visualizations. You can import many other libraries, but remember that there&#8217;s a limited number of libraries available.</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;78cd4557-de50-48ea-ab29-f34f288a5d05&quot;,&quot;duration&quot;:null}"></div><p>Canvas has a button located in the bottom-right corner that displays many features useful for developers and software engineers. These features are:</p><ul><li><p>Review code</p></li><li><p>Port to a  language</p></li><li><p>Fix bugs</p></li><li><p>Add logs</p></li><li><p>Add comments to your code</p></li></ul><p>Besides Canvas, it&#8217;s worth mentioning other ways to learn Python with ChatGPT. My favorite is brainstorming unique projects with ChatGPT. Why projects? It&#8217;s the best way to put the concepts you learned into practice. </p><p>We can use ChatGPT to come up with cool and unique project ideas based on the programming knowledge we have and the things we like.</p><p>Here&#8217;s the prompt I use for this.</p><blockquote><p>Act as a programming mentor. I&#8217;m learning Python and have already learned [topic 1, topic 2, &#8230;]</p><p>What Python projects can I solve? Consider that I like [thing 1, thing 2, &#8230;]</p></blockquote><p>Here&#8217;s an example.</p><blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!OyWU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff28ca08a-4bc8-4056-9367-971b478d121d_800x773.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!OyWU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff28ca08a-4bc8-4056-9367-971b478d121d_800x773.png 424w, https://substackcdn.com/image/fetch/$s_!OyWU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff28ca08a-4bc8-4056-9367-971b478d121d_800x773.png 848w, https://substackcdn.com/image/fetch/$s_!OyWU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff28ca08a-4bc8-4056-9367-971b478d121d_800x773.png 1272w, https://substackcdn.com/image/fetch/$s_!OyWU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff28ca08a-4bc8-4056-9367-971b478d121d_800x773.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!OyWU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff28ca08a-4bc8-4056-9367-971b478d121d_800x773.png" width="800" height="773" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f28ca08a-4bc8-4056-9367-971b478d121d_800x773.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:773,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!OyWU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff28ca08a-4bc8-4056-9367-971b478d121d_800x773.png 424w, https://substackcdn.com/image/fetch/$s_!OyWU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff28ca08a-4bc8-4056-9367-971b478d121d_800x773.png 848w, https://substackcdn.com/image/fetch/$s_!OyWU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff28ca08a-4bc8-4056-9367-971b478d121d_800x773.png 1272w, https://substackcdn.com/image/fetch/$s_!OyWU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff28ca08a-4bc8-4056-9367-971b478d121d_800x773.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div></blockquote><p>Once you select a project, you can ask for the steps to solve it (without making ChatGPT write the code for you).</p><p>In a previous <a href="https://artificialcorner.com/p/behind-ai-1-how-to-learn-python-with">article</a>, I covered other ways to use ChatGPT to learn Python. While some of those suggestions can now be accomplished with just one click using Canvas, others remain relevant.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?"><span>Subscribe now</span></a></p><h3>Turn Gemini into your real-time AI tutor</h3><p>Gemini is Google&#8217;s AI model. One cool feature of Gemini 2.0 is real-time screen sharing. This feature allows us to share our screens with Gemini, enabling it to analyze on-screen content and provide real-time assistance. </p><p>As programmers, we can allow Gemini 2.0 to view our screen and provide real-time guidance for solving any coding problem we encounter.</p><p>Anyone with a Google account can use this feature for free. To use it, go to this <a href="http://aistudio.google.com">site</a>, click on &#8220;stream realtime&#8221; on the left panel, and select &#8220;share screen.&#8221; After that, Gemini will see your screen and you can talk with it in real-time. </p><p>You can open your code editor, start writing code, and ask for guidance from Gemini whenever you need it. Here&#8217;s a demo where I asked Gemini for help to create a Python script that generates ten random numbers.</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;9b29fbbd-2552-40d1-9e36-69d088eb1386&quot;,&quot;duration&quot;:null}"></div><p>This is like having an AI tutor that can see whatever you&#8217;re working on 24/7. As a beginner, you can use Gemini to write a script, remember functions, learn terminal commands, set up your code environment, and more!</p><h3>Improve the way you learn to code with NotebookLM</h3><p>NotebookLM is an AI-powered research and note-taking tool developed by Google. You can use NotebookLM to:</p><ul><li><p>Convert long documents (PDFs, slides, links) into easy-to-understand summaries</p></li><li><p>Build your own study guides effortlessly</p></li><li><p>Create a podcast where an AI host walks you through complex material in minutes</p></li></ul><p>This is game-changing for learning new subjects. That&#8217;s why I think this tool will change the way you learn coding.</p><p>How do I use NotebookLM to learn Python? I use it to better understand any Python tutorial or guide I&#8217;m following and even go beyond that by asking questions about the content in the video or guide. To do this, go to <a href="http://notebooklm.google.com">NotebookLM</a>, and then provide the link to a YouTube tutorial or Python guide, book, etc. Once you upload your file, NotebookLM will analyze its content and then we can start a chat with it. </p><p>In the example below, I gave NotebookLM a link to my <a href="https://youtu.be/g_j6ILT-X0k">tutorial</a> on how to send emails with Python. Once it analyzed the video&#8217;s transcript, I could ask it questions like the libraries used in the video or what I should keep into account before writing the script to send emails with Python.</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;eb1a4da1-69a7-49a9-9118-f383ca616236&quot;,&quot;duration&quot;:null}"></div><p>If you want to go beyond the tutorial, just generate a podcast from the document uploaded. To generate the podcast, just go to the Audio Overview section and click on Generate.  After some minutes, NotebookLM will generate an engaging audio discussion between two AI-generated hosts. The discussion is a summary of the material with some extra information that will help you deep diver into the topic and even learn new things.</p><p>Here&#8217;s the podcast NotebookLM generated from my YouTube video.</p><div class="native-audio-embed" data-component-name="AudioPlaceholder" data-attrs="{&quot;label&quot;:null,&quot;mediaUploadId&quot;:&quot;09d2e782-e9bf-4282-a49a-369fa727b576&quot;,&quot;duration&quot;:709.5641,&quot;downloadable&quot;:false,&quot;isEditorNode&quot;:true}"></div><p>I find the podcast a good complement to my video tutorial. While my video mostly focuses on the Python code to send the emails, the podcast dives into concepts such as SSL, SMTP, secure passwords, and more!</p><p>You can find another nice AI-generated podcast about my Python book recommendation, in this <a href="https://artificialcorner.com/p/i-built-a-second-brain-and-automated">article</a>.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?"><span>Subscribe now</span></a></p><h3>GitHub Copilot: A general-purpose AI coding assistant</h3><p>Here&#8217;s a bonus for those with some coding experience: GitHub Copilot. </p><p>GitHub's AI tool is a game-changer for real-time code writing. What's cool about it is that it offers an interaction style similar to ChatGPT, but it's focused on coding. Plus, it can keep building out a program you're working on in the editor.</p><p>One feature that really stands out to me is the chat function. You can literally quiz it about constructing functions or clear up any doubts about specific bits of your code. It's like having a coding guru on standby, ready to jump in with insights or solutions.</p><p>Something I like about Copilot is that it doesn't just stop after giving a response. It keeps the ball rolling, offering up possible questions I might want to ask next or things to consider. Below is how Copilot completed a Fibonacci function and the follow-up questions it generated.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!u-df!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f912e2d-2a57-4c0d-9403-e6f5d10787cd_855x960.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!u-df!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f912e2d-2a57-4c0d-9403-e6f5d10787cd_855x960.png 424w, https://substackcdn.com/image/fetch/$s_!u-df!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f912e2d-2a57-4c0d-9403-e6f5d10787cd_855x960.png 848w, https://substackcdn.com/image/fetch/$s_!u-df!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f912e2d-2a57-4c0d-9403-e6f5d10787cd_855x960.png 1272w, https://substackcdn.com/image/fetch/$s_!u-df!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f912e2d-2a57-4c0d-9403-e6f5d10787cd_855x960.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!u-df!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f912e2d-2a57-4c0d-9403-e6f5d10787cd_855x960.png" width="520" height="583.859649122807" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3f912e2d-2a57-4c0d-9403-e6f5d10787cd_855x960.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:960,&quot;width&quot;:855,&quot;resizeWidth&quot;:520,&quot;bytes&quot;:84801,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:&quot;&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!u-df!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f912e2d-2a57-4c0d-9403-e6f5d10787cd_855x960.png 424w, https://substackcdn.com/image/fetch/$s_!u-df!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f912e2d-2a57-4c0d-9403-e6f5d10787cd_855x960.png 848w, https://substackcdn.com/image/fetch/$s_!u-df!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f912e2d-2a57-4c0d-9403-e6f5d10787cd_855x960.png 1272w, https://substackcdn.com/image/fetch/$s_!u-df!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f912e2d-2a57-4c0d-9403-e6f5d10787cd_855x960.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>It's like having an ongoing conversation with your code!</p><p>Plus, there's a feature that lets you move the suggested code into your editor. This creates a seamless flow, letting you bounce between the chat and the editor.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!eEOr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde59feb7-14a6-4f19-a6cd-278305537af5_1766x545.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!eEOr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde59feb7-14a6-4f19-a6cd-278305537af5_1766x545.png 424w, https://substackcdn.com/image/fetch/$s_!eEOr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde59feb7-14a6-4f19-a6cd-278305537af5_1766x545.png 848w, https://substackcdn.com/image/fetch/$s_!eEOr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde59feb7-14a6-4f19-a6cd-278305537af5_1766x545.png 1272w, https://substackcdn.com/image/fetch/$s_!eEOr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde59feb7-14a6-4f19-a6cd-278305537af5_1766x545.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!eEOr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde59feb7-14a6-4f19-a6cd-278305537af5_1766x545.png" width="710" height="218.94917582417582" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/de59feb7-14a6-4f19-a6cd-278305537af5_1766x545.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:449,&quot;width&quot;:1456,&quot;resizeWidth&quot;:710,&quot;bytes&quot;:87934,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:&quot;&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!eEOr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde59feb7-14a6-4f19-a6cd-278305537af5_1766x545.png 424w, https://substackcdn.com/image/fetch/$s_!eEOr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde59feb7-14a6-4f19-a6cd-278305537af5_1766x545.png 848w, https://substackcdn.com/image/fetch/$s_!eEOr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde59feb7-14a6-4f19-a6cd-278305537af5_1766x545.png 1272w, https://substackcdn.com/image/fetch/$s_!eEOr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde59feb7-14a6-4f19-a6cd-278305537af5_1766x545.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>If you want to multitask within the editor, you can get the Copilot chat by pressing Ctrl + i<strong>. </strong></p><p>Here are some of my favorite commands:</p><ul><li><p>Diving deeper into the code: <code>/explain</code></p></li><li><p>Getting unstuck or fixing code snags: <code>/fix</code></p></li><li><p>Conducting tests on the code: <code>/tests</code></p></li></ul><p>I have to say Copilot is one of my favorite tools. It's like having the best of ChatGPT, but baked right into your IDE, making coding effortless and more efficient. You can add the GitHub Copilot extension to Visual Studio Code, Visual Studio, JetBrains, and Neovim.</p><p>GitHub Copilot is my favorite general-purpose coding assistant, but other tools excel in specific scenarios. In this <a href="https://artificialcorner.com/p/i-tried-multiple-ai-coding-assistants">article</a>, I reviewed all the AI coding assistants I tried.</p><div><hr></div><p>Are you using any other AI tool to learn to code? Let me know in the comments!</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?"><span>Subscribe now</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&amp;gift=true&quot;,&quot;text&quot;:&quot;Give a gift subscription&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?&amp;gift=true"><span>Give a gift subscription</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[Your Mac Terminal Doesn't Have to Look Ugly. Upgrade It In a Few Minutes]]></title><description><![CDATA[Here's my guide to transform your Mac terminal, so that you become more productive as a programmer.]]></description><link>https://artificialcorner.com/p/your-mac-terminal-doesnt-have-to</link><guid isPermaLink="false">https://artificialcorner.com/p/your-mac-terminal-doesnt-have-to</guid><dc:creator><![CDATA[Frank Andrade]]></dc:creator><pubDate>Wed, 19 Mar 2025 16:02:32 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!nT5F!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfadf90e-ec67-489a-915a-53dd64e441cf_800x800.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!nT5F!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfadf90e-ec67-489a-915a-53dd64e441cf_800x800.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!nT5F!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfadf90e-ec67-489a-915a-53dd64e441cf_800x800.png 424w, https://substackcdn.com/image/fetch/$s_!nT5F!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfadf90e-ec67-489a-915a-53dd64e441cf_800x800.png 848w, https://substackcdn.com/image/fetch/$s_!nT5F!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfadf90e-ec67-489a-915a-53dd64e441cf_800x800.png 1272w, https://substackcdn.com/image/fetch/$s_!nT5F!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfadf90e-ec67-489a-915a-53dd64e441cf_800x800.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!nT5F!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfadf90e-ec67-489a-915a-53dd64e441cf_800x800.png" width="800" height="800" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bfadf90e-ec67-489a-915a-53dd64e441cf_800x800.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:800,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!nT5F!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfadf90e-ec67-489a-915a-53dd64e441cf_800x800.png 424w, https://substackcdn.com/image/fetch/$s_!nT5F!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfadf90e-ec67-489a-915a-53dd64e441cf_800x800.png 848w, https://substackcdn.com/image/fetch/$s_!nT5F!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfadf90e-ec67-489a-915a-53dd64e441cf_800x800.png 1272w, https://substackcdn.com/image/fetch/$s_!nT5F!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfadf90e-ec67-489a-915a-53dd64e441cf_800x800.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Image made with Dall-E 3</figcaption></figure></div><blockquote><p>Before we start today&#8217;s article, I have a recommendation for anyone into Java and system design: Javin&#8217;s Substack, Javarevisited.</p><p>Javin has a Substack called <a href="https://javarevisited.substack.com/">Javarevisited</a> where he helps thousands of tech enthusiasts, developers, and software professionals to learn Java, Programming, and System Design and prepare for tech interviews. He has been writing blogs since 2010 and published Grokking the Java Interview <a href="http://javinpaul.gumroad.com/l/sowpfg">book</a> and <a href="https://www.udemy.com/course/1z0-830-java-se-21-developer-professional-exam-practice-test/?referralCode=816F7A9F8A35361AE1C1">courses</a> on Udemy. </p><p>If you're into Java or System Design, check out his Substack!</p></blockquote><p>The Mac terminal is quite a useful tool for programmers, yet it doesn&#8217;t have a friendly interface.</p><p>If you&#8217;re a programmer, chances are you spend a lot of time using the terminal. That&#8217;s why you should invest some minutes to upgrade it in order to become more productive when working with it.</p><p>Here&#8217;s how to upgrade your Mac terminal so it looks less like the first image and more like the second image below.</p>
      <p>
          <a href="https://artificialcorner.com/p/your-mac-terminal-doesnt-have-to">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[AI & Python #39 : Here's What Most Python and Data Science Courses Don't Teach You]]></title><description><![CDATA[And free resources to learn them on your own.]]></description><link>https://artificialcorner.com/p/ai-and-python-39-heres-what-most</link><guid isPermaLink="false">https://artificialcorner.com/p/ai-and-python-39-heres-what-most</guid><dc:creator><![CDATA[Frank Andrade]]></dc:creator><pubDate>Mon, 03 Mar 2025 14:03:54 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!6vtB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53df91fc-4a88-4975-b5bb-022174e977a7_4916x3506.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6vtB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53df91fc-4a88-4975-b5bb-022174e977a7_4916x3506.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6vtB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53df91fc-4a88-4975-b5bb-022174e977a7_4916x3506.jpeg 424w, https://substackcdn.com/image/fetch/$s_!6vtB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53df91fc-4a88-4975-b5bb-022174e977a7_4916x3506.jpeg 848w, https://substackcdn.com/image/fetch/$s_!6vtB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53df91fc-4a88-4975-b5bb-022174e977a7_4916x3506.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!6vtB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53df91fc-4a88-4975-b5bb-022174e977a7_4916x3506.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6vtB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53df91fc-4a88-4975-b5bb-022174e977a7_4916x3506.jpeg" width="1456" height="1038" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/53df91fc-4a88-4975-b5bb-022174e977a7_4916x3506.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1038,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1409807,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://artificialcorner.com/i/158284978?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53df91fc-4a88-4975-b5bb-022174e977a7_4916x3506.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6vtB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53df91fc-4a88-4975-b5bb-022174e977a7_4916x3506.jpeg 424w, https://substackcdn.com/image/fetch/$s_!6vtB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53df91fc-4a88-4975-b5bb-022174e977a7_4916x3506.jpeg 848w, https://substackcdn.com/image/fetch/$s_!6vtB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53df91fc-4a88-4975-b5bb-022174e977a7_4916x3506.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!6vtB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53df91fc-4a88-4975-b5bb-022174e977a7_4916x3506.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Credit: Unsplash</figcaption></figure></div><p>There&#8217;s no perfect course in this world, but do you know what most of them don&#8217;t teach you?</p><p>The not-so-obvious skills and tools you&#8217;ll need at work!</p><p>Most courses are great for getting you started with a programming language and refreshing your knowledge of tech skills, but they lack a couple of modules dedicated to the skills you need to have at work to work efficiently with other programmers and non-technical coworkers.</p><p>Here are three things you probably didn&#8217;t learn in an online course (plus resources to learn them on your own).</p><h4>Software Engineering Practices</h4><p>As a data scientist, you&#8217;ll be writing code in programming languages such as SQL, Python, and R. Although most data science courses will help you get started with coding, they won&#8217;t teach you or focus on good practices.</p><p>Good practices such as writing clean code, modular code, and optimizing your code are very popular in software engineering. Believe it or not, these good practices will help you become a better data scientist.</p><p>Here&#8217;s a simple example of how to optimize your code:</p><pre><code># Imagine we have an array of random exam scores and we want to get the average score of those who failed the exam (score&lt;70)
# Below are two way of solving this problem (one using loops and the other using vector operations)

<strong>import</strong> time
<strong>import</strong> numpy <strong>as</strong> np

random_scores = np.random.randint(1, 100, size=10000001)

<strong># SOL1: solving problem using a for loop</strong>
start = time.time()

count_failed = 0
sum_failed = 0
for score in random_scores:
    if score &lt; 70:
        sum_failed += score
        count_failed += 1

print(sum_failed/count_failed)
print(f'Duration: {time.time() - start} seconds')


<strong># SOL2: solving problem using vector operations</strong>
start = time.time()

mean_failed = (random_scores[random_scores &lt; 70]).mean()
print(mean_failed)

print(f'Duration: {time.time() - start} seconds')</code></pre><p>That&#8217;s only a basic example with a few lines of code! The longer the script, the more important it is to follow these good practices.</p><p>What can you do to learn good software engineering practices?</p><p>You can search for guides or tutorials to learn good <a href="https://artificialcorner.com/p/ai-and-python-32-software-engineering">software engineering practices for data science</a>, and read a book that covers all these points and gives a big picture on the topic.</p><p>Here are 5 <a href="https://artificialcorner.com/p/ai-and-python-33-4-python-books-that">Python books</a> that every beginner should read to go beyond the basics. I&#8217;d recommend checking the book &#8220;Clean Code in Python&#8221; in particular because it covers most of the points mentioned before.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?"><span>Subscribe now</span></a></p>
      <p>
          <a href="https://artificialcorner.com/p/ai-and-python-39-heres-what-most">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Self-Studying Python? Here’s What I Learned After Taking 10+ Online Courses]]></title><description><![CDATA[How to pick the right Python course for you and self-study using online courses.]]></description><link>https://artificialcorner.com/p/self-studying-python-heres-what-i</link><guid isPermaLink="false">https://artificialcorner.com/p/self-studying-python-heres-what-i</guid><dc:creator><![CDATA[Frank Andrade]]></dc:creator><pubDate>Thu, 20 Feb 2025 16:04:05 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!jIo4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8e8a838-bb20-4d14-8d85-65b05e3c3462_800x534.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jIo4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8e8a838-bb20-4d14-8d85-65b05e3c3462_800x534.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jIo4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8e8a838-bb20-4d14-8d85-65b05e3c3462_800x534.jpeg 424w, https://substackcdn.com/image/fetch/$s_!jIo4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8e8a838-bb20-4d14-8d85-65b05e3c3462_800x534.jpeg 848w, https://substackcdn.com/image/fetch/$s_!jIo4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8e8a838-bb20-4d14-8d85-65b05e3c3462_800x534.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!jIo4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8e8a838-bb20-4d14-8d85-65b05e3c3462_800x534.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jIo4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8e8a838-bb20-4d14-8d85-65b05e3c3462_800x534.jpeg" width="800" height="534" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c8e8a838-bb20-4d14-8d85-65b05e3c3462_800x534.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:534,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!jIo4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8e8a838-bb20-4d14-8d85-65b05e3c3462_800x534.jpeg 424w, https://substackcdn.com/image/fetch/$s_!jIo4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8e8a838-bb20-4d14-8d85-65b05e3c3462_800x534.jpeg 848w, https://substackcdn.com/image/fetch/$s_!jIo4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8e8a838-bb20-4d14-8d85-65b05e3c3462_800x534.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!jIo4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8e8a838-bb20-4d14-8d85-65b05e3c3462_800x534.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Image Credit: Shutterstock</figcaption></figure></div><p>Online courses helped me learn much of the Python stuff I know. I like going at my own pace and having the flexibility to study and work, so I finished most of them without any problem.</p><p>However, there were also times when I joined a course, took a couple of lectures, and never returned. Sometimes the course was too advanced for me, the instructor was too boring, or the concepts were poorly explained. After taking many online courses, I&#8217;d like to share with you my strategy for self-studying using online courses.</p><p>This guide covers things like how to pick the right Python course, how to make the most of online courses, and more.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?"><span>Subscribe now</span></a></p><h3>First Things First&#8202;&#8212;&#8202;Answer These 3 Vital Questions</h3><p>One of the key points to choosing the right course(s) for you is to know what exactly you&#8217;re looking for, why you want to learn that, and how much time you have to learn it.</p><p>Ask yourself these questions:</p><blockquote><p>1. What (exactly) do I wanna learn?<br>2. Why do I wanna learn it?<br>3. How much time available do I have to learn that?</p></blockquote><p>Questions #1 and #3 help you narrow down the courses, while question #2 supports your decision (keep this in mind whenever you feel you make little progress).</p><p>Say you know the basics of Python and want to learn more. There are many fields where Python can be used (data science, web development, AI programming, machine learning, etc), so you need to know what exactly you want to learn. Also, if you have little time available, you should stay away from those 50+ hour courses that you might never finish.</p><p><strong>Note</strong>: If you don&#8217;t know how to answer question 1, jump to the next section (there&#8217;s a course that might help you make up your mind).</p><p>Here is how I answered these questions when I was an absolute beginner.</p><blockquote><p>1. Data Science with Python<br>2. I like Python and working with data.<br>3. All day!</p></blockquote><p>Here is how I answered these questions after learning Python and data science for some years:</p><blockquote><p>1. Machine Learning with TensorFlow<br>2. I love ML and TensorFlow is popular among developers (it has Google&#8217;s support)<br>3. 1 hour on weekdays</p></blockquote><p>I gave these 2 examples, so the advice in the next section can fit most situations.</p><p>Great! Now is your time to answer these questions. Once you know the answers, choosing the right course will be way easier.</p><h3>How to choose the right course for you</h3><p>There are hundreds of courses out there, so choosing the right course might be overwhelming.</p><p>You might ask for advice from your friends and colleagues, but, the truth is, a course defined as &#8220;perfect&#8221; by your colleague might not be perfect for you. Why? Well, he/she might have a different background, experience, and goals!</p><p>Here are some rules of thumb that you should follow when picking a course as a beginner or advanced student:</p><ul><li><p>The course should have tasks, exercises, and projects. This helps put into practice what you learn</p></li><li><p>Keep an eye on the instructor(s). Smart people aren&#8217;t always the best teachers</p></li><li><p>If you want to join a course that involves coding, make sure the instructor doesn&#8217;t write code right away, but, whenever possible, makes some time to explain concepts with slides, an online whiteboard, etc.</p></li></ul><h4>If you&#8217;re an absolute beginner</h4><p>If you&#8217;ve just started your journey, take courses that focus on core concepts, so you can build a strong foundation. Also, if you still don&#8217;t know what exactly you want to learn, take courses that cover different topics.</p><p>Say you want to start your data science journey with Python. Here&#8217;s what I get after searching &#8220;Data Science with Python&#8221; on Udemy,</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ZYfc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe84dc54a-3225-497f-b8ee-7903f7e14ef2_800x450.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZYfc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe84dc54a-3225-497f-b8ee-7903f7e14ef2_800x450.png 424w, https://substackcdn.com/image/fetch/$s_!ZYfc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe84dc54a-3225-497f-b8ee-7903f7e14ef2_800x450.png 848w, https://substackcdn.com/image/fetch/$s_!ZYfc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe84dc54a-3225-497f-b8ee-7903f7e14ef2_800x450.png 1272w, https://substackcdn.com/image/fetch/$s_!ZYfc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe84dc54a-3225-497f-b8ee-7903f7e14ef2_800x450.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZYfc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe84dc54a-3225-497f-b8ee-7903f7e14ef2_800x450.png" width="800" height="450" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e84dc54a-3225-497f-b8ee-7903f7e14ef2_800x450.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:450,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ZYfc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe84dc54a-3225-497f-b8ee-7903f7e14ef2_800x450.png 424w, https://substackcdn.com/image/fetch/$s_!ZYfc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe84dc54a-3225-497f-b8ee-7903f7e14ef2_800x450.png 848w, https://substackcdn.com/image/fetch/$s_!ZYfc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe84dc54a-3225-497f-b8ee-7903f7e14ef2_800x450.png 1272w, https://substackcdn.com/image/fetch/$s_!ZYfc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe84dc54a-3225-497f-b8ee-7903f7e14ef2_800x450.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Image by author</figcaption></figure></div><p>After checking them out and considering the previous advice, course #3 looks like a good candidate. Why? It focuses on Python for data science and has plenty of exercises and projects.</p><p>Course #2 is good too, but isn&#8217;t only about Python but also math and statistics (this goes against my answer to question 1), On the other hand, course #4 is a bit advanced and not only focuses on Python but on R, while course #1 is kind of outdated.</p><h4>If you have previous knowledge</h4><p>If you already know some stuff and want to specialize in a topic, you should stay away from those &#8220;ultimate courses&#8221; that cover a lot of stuff but don&#8217;t delve into the topic you&#8217;re interested in.</p><p>Here&#8217;s what I get after searching &#8220;Machine Learning with TensorFlow&#8221; on Udemy.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!y_RJ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd22d7fdf-e50d-4e18-9f93-0a198ef09be5_800x450.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!y_RJ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd22d7fdf-e50d-4e18-9f93-0a198ef09be5_800x450.png 424w, https://substackcdn.com/image/fetch/$s_!y_RJ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd22d7fdf-e50d-4e18-9f93-0a198ef09be5_800x450.png 848w, https://substackcdn.com/image/fetch/$s_!y_RJ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd22d7fdf-e50d-4e18-9f93-0a198ef09be5_800x450.png 1272w, https://substackcdn.com/image/fetch/$s_!y_RJ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd22d7fdf-e50d-4e18-9f93-0a198ef09be5_800x450.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!y_RJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd22d7fdf-e50d-4e18-9f93-0a198ef09be5_800x450.png" width="800" height="450" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d22d7fdf-e50d-4e18-9f93-0a198ef09be5_800x450.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:450,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!y_RJ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd22d7fdf-e50d-4e18-9f93-0a198ef09be5_800x450.png 424w, https://substackcdn.com/image/fetch/$s_!y_RJ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd22d7fdf-e50d-4e18-9f93-0a198ef09be5_800x450.png 848w, https://substackcdn.com/image/fetch/$s_!y_RJ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd22d7fdf-e50d-4e18-9f93-0a198ef09be5_800x450.png 1272w, https://substackcdn.com/image/fetch/$s_!y_RJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd22d7fdf-e50d-4e18-9f93-0a198ef09be5_800x450.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Image by author</figcaption></figure></div><p>This time is harder to choose a good course.</p><p>Course #1 is too broad and basic. Course #3 lacks the projects and exercises, while course #4 is more about math for ML.</p><p>If I had to pick one of those courses I&#8217;d choose course #5 (it has a couple of good projects) and course #2. But they don&#8217;t convince me completely. Course #2 has some exercises, but not so many projects and I&#8217;m afraid it can be too broad (63 hours of content!).</p><p>The good news is that there are also other platforms we can check out. I like Udacity&#8217;s courses because they&#8217;re taught not only by 1 but many industry experts who are also good at teaching. Coursera is another great option.</p><h3>How to make the most of a course</h3><p>Now that you selected the right course, it&#8217;s time to get your hands dirty.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?"><span>Subscribe now</span></a></p>
      <p>
          <a href="https://artificialcorner.com/p/self-studying-python-heres-what-i">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[4 Free Courses I Took to Learn Python for Data Science & AI]]></title><description><![CDATA[Beginner and advanced free courses I selected after taking over 10 courses.]]></description><link>https://artificialcorner.com/p/4-free-courses-i-took-to-learn-python</link><guid isPermaLink="false">https://artificialcorner.com/p/4-free-courses-i-took-to-learn-python</guid><dc:creator><![CDATA[Frank Andrade]]></dc:creator><pubDate>Thu, 23 Jan 2025 13:05:34 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!cYTM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F344d9c2d-56d5-483b-867f-360cd567c6c2_800x571.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!cYTM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F344d9c2d-56d5-483b-867f-360cd567c6c2_800x571.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!cYTM!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F344d9c2d-56d5-483b-867f-360cd567c6c2_800x571.jpeg 424w, https://substackcdn.com/image/fetch/$s_!cYTM!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F344d9c2d-56d5-483b-867f-360cd567c6c2_800x571.jpeg 848w, https://substackcdn.com/image/fetch/$s_!cYTM!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F344d9c2d-56d5-483b-867f-360cd567c6c2_800x571.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!cYTM!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F344d9c2d-56d5-483b-867f-360cd567c6c2_800x571.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!cYTM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F344d9c2d-56d5-483b-867f-360cd567c6c2_800x571.jpeg" width="800" height="571" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/344d9c2d-56d5-483b-867f-360cd567c6c2_800x571.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:571,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!cYTM!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F344d9c2d-56d5-483b-867f-360cd567c6c2_800x571.jpeg 424w, https://substackcdn.com/image/fetch/$s_!cYTM!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F344d9c2d-56d5-483b-867f-360cd567c6c2_800x571.jpeg 848w, https://substackcdn.com/image/fetch/$s_!cYTM!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F344d9c2d-56d5-483b-867f-360cd567c6c2_800x571.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!cYTM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F344d9c2d-56d5-483b-867f-360cd567c6c2_800x571.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Photo by <a href="https://unsplash.com/@janaloyy?utm_source=medium&amp;utm_medium=referral">Jana Leu</a> on <a href="https://unsplash.com?utm_source=medium&amp;utm_medium=referral">Unsplash</a></figcaption></figure></div><p>Before paying for a course, it&#8217;s a good idea to check what has been published out there&#8202;&#8212;&#8202;there&#8217;s a decent amount of high-quality free content. This is what I did when I started learning Python for data science. I checked the curriculum of paid data science courses and then searched all the stuff related to Python.</p><p>I selected the best 4 free courses I took to learn Python for data science. The 4 courses cover some of the stuff in &#8220;<a href="https://artificialcorner.com/p/behind-ai-6-the-4-stages-of-learning">The 4 Stages of Learning Python for AI &amp; ML</a>.&#8221; Although you won&#8217;t get a nice certificate after completing any of these courses, the knowledge you will acquire is priceless.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?"><span>Subscribe now</span></a></p><h3>#1 Learn Python&#8202;&#8212;&#8202;Full Course for Beginners</h3><p>This <a href="https://www.youtube.com/watch?v=rfscVS0vtbw">4-hour Python beginners course</a> covers all the basic Python stuff you need before learning libraries used in data science. This is a crash course in Python&#8202;&#8212;&#8202;when I took this course I had zero knowledge about programming. The course will show you how to set up Python, teach you how to print your first &#8220;Hello World&#8221;, &#8230;</p>
      <p>
          <a href="https://artificialcorner.com/p/4-free-courses-i-took-to-learn-python">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[AI & Python #38: The Easiest Way to Make Beautiful Interactive Visualizations With Pandas]]></title><description><![CDATA[One-liner interactive visualization with Pandas in Python]]></description><link>https://artificialcorner.com/p/ai-and-python-38-the-easiest-way</link><guid isPermaLink="false">https://artificialcorner.com/p/ai-and-python-38-the-easiest-way</guid><dc:creator><![CDATA[Frank Andrade]]></dc:creator><pubDate>Wed, 15 Jan 2025 12:54:38 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2e20377-53c4-4452-b51c-9ab8ab95865f_1364x592.gif" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In a previous <a href="https://artificialcorner.com/p/no-code-tools-to-make-interactive">article</a>, I shared 5 no-code tools for interactive data visualization. Today, we&#8217;ll see how to create this type of visualization in Python without getting too technical and wasting a lot of time. I&#8217;ve been searching for libraries with that goal in mind and found an easy way to create interactive visualizations directly from Pandas. </p><p>We&#8217;ll see how this Python library works in detail in this guide.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?"><span>Subscribe now</span></a></p><h4>Install the libraries</h4><p>To easily create interactive visualizations, we need to install Cufflinks. This is a library that connects Pandas with Plotly, so we can create visualizations directly from Pandas (in the past you had to learn workarounds to make them work together, but now it&#8217;s simpler)</p><p>First, make sure you install Pandas and Plotly by running the following commands on the terminal:</p><pre><code>pip install pandas
pip install plotly</code></pre><p>Note that you can also use conda to install Plotly: <code>conda install -c plotly</code>.</p><p>Once you have Plotly installed, run the following commands to install Cufflinks:</p><pre><code>pip in&#8230;</code></pre>
      <p>
          <a href="https://artificialcorner.com/p/ai-and-python-38-the-easiest-way">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[AI & Python #37: Books I Read to Automate Some Boring Tasks]]></title><description><![CDATA[Python automation.]]></description><link>https://artificialcorner.com/p/ai-and-python-37-books-i-read-to</link><guid isPermaLink="false">https://artificialcorner.com/p/ai-and-python-37-books-i-read-to</guid><dc:creator><![CDATA[Frank Andrade]]></dc:creator><pubDate>Tue, 07 Jan 2025 13:55:32 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!3c3v!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7769ada-1bc1-4bd0-9b71-0fc4d595b7e7_800x533.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!3c3v!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7769ada-1bc1-4bd0-9b71-0fc4d595b7e7_800x533.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3c3v!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7769ada-1bc1-4bd0-9b71-0fc4d595b7e7_800x533.jpeg 424w, https://substackcdn.com/image/fetch/$s_!3c3v!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7769ada-1bc1-4bd0-9b71-0fc4d595b7e7_800x533.jpeg 848w, https://substackcdn.com/image/fetch/$s_!3c3v!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7769ada-1bc1-4bd0-9b71-0fc4d595b7e7_800x533.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!3c3v!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7769ada-1bc1-4bd0-9b71-0fc4d595b7e7_800x533.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3c3v!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7769ada-1bc1-4bd0-9b71-0fc4d595b7e7_800x533.jpeg" width="800" height="533" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f7769ada-1bc1-4bd0-9b71-0fc4d595b7e7_800x533.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:533,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!3c3v!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7769ada-1bc1-4bd0-9b71-0fc4d595b7e7_800x533.jpeg 424w, https://substackcdn.com/image/fetch/$s_!3c3v!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7769ada-1bc1-4bd0-9b71-0fc4d595b7e7_800x533.jpeg 848w, https://substackcdn.com/image/fetch/$s_!3c3v!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7769ada-1bc1-4bd0-9b71-0fc4d595b7e7_800x533.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!3c3v!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7769ada-1bc1-4bd0-9b71-0fc4d595b7e7_800x533.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Photo by <a href="https://unsplash.com/@austindistel?utm_source=medium&amp;utm_medium=referral">Austin Distel</a> on <a href="https://unsplash.com?utm_source=medium&amp;utm_medium=referral">Unsplash</a></figcaption></figure></div><p>In this article, I will show you 3 books that helped me automate tasks such as sending emails, collecting data, creating reports, and more!</p><h3>1. Automate the Boring Stuff with Python</h3>
      <p>
          <a href="https://artificialcorner.com/p/ai-and-python-37-books-i-read-to">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[AI & Python #36: Python Libraries You Should Learn]]></title><description><![CDATA[Multipurpose Python libraries that you&#8217;ll need regardless of your specialization.]]></description><link>https://artificialcorner.com/p/ai-and-python-36-python-libraries</link><guid isPermaLink="false">https://artificialcorner.com/p/ai-and-python-36-python-libraries</guid><dc:creator><![CDATA[Frank Andrade]]></dc:creator><pubDate>Fri, 20 Dec 2024 14:07:14 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!_tUL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793da781-fd68-43b3-80f7-c39805049603_800x533.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!_tUL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793da781-fd68-43b3-80f7-c39805049603_800x533.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!_tUL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793da781-fd68-43b3-80f7-c39805049603_800x533.jpeg 424w, https://substackcdn.com/image/fetch/$s_!_tUL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793da781-fd68-43b3-80f7-c39805049603_800x533.jpeg 848w, https://substackcdn.com/image/fetch/$s_!_tUL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793da781-fd68-43b3-80f7-c39805049603_800x533.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!_tUL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793da781-fd68-43b3-80f7-c39805049603_800x533.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!_tUL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793da781-fd68-43b3-80f7-c39805049603_800x533.jpeg" width="800" height="533" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/793da781-fd68-43b3-80f7-c39805049603_800x533.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:533,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!_tUL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793da781-fd68-43b3-80f7-c39805049603_800x533.jpeg 424w, https://substackcdn.com/image/fetch/$s_!_tUL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793da781-fd68-43b3-80f7-c39805049603_800x533.jpeg 848w, https://substackcdn.com/image/fetch/$s_!_tUL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793da781-fd68-43b3-80f7-c39805049603_800x533.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!_tUL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793da781-fd68-43b3-80f7-c39805049603_800x533.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Image via Shutterstock</figcaption></figure></div><p>Everyone has been in a situation where they don&#8217;t know what to learn next or what to specialize in.</p><p>You might like Python but that doesn&#8217;t mean you&#8217;ll learn every single library out there. You also don&#8217;t want to learn libraries that you may never use, so what should you do?</p><p>Well, there are a few Python libraries that will come in handy regardless of the field you&#8217;re in. Whether you&#8217;re into web development or data analysis, you&#8217;d need these libraries to some degree.</p><p>Here are some Python modules, libraries, and packages that you should learn whenever you don&#8217;t know what to learn next.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?"><span>Subscribe now</span></a></p><h3>OS/Pathlib</h3><p>Working with paths is something that anyone does sooner or later. Whether you&#8217;d like to export a dataset in a specific directory or read static files for your web application, you&#8217;d need to learn the OS or Pathlib modules.</p><p>The OS and Pathlib are Python modules that allow us to do file system operations such as creating directories, listing directory content, working with paths, a&#8230;</p>
      <p>
          <a href="https://artificialcorner.com/p/ai-and-python-36-python-libraries">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[AI & Python #35: Data Science Projects in Python for All Levels]]></title><description><![CDATA[Beginner and advanced data science projects with source code.]]></description><link>https://artificialcorner.com/p/ai-and-python-35-data-science-projects</link><guid isPermaLink="false">https://artificialcorner.com/p/ai-and-python-35-data-science-projects</guid><dc:creator><![CDATA[Frank Andrade]]></dc:creator><pubDate>Thu, 12 Dec 2024 17:23:44 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Laok!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd456566b-6678-4d41-b275-f1356f39411f_6000x3376.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Laok!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd456566b-6678-4d41-b275-f1356f39411f_6000x3376.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Laok!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd456566b-6678-4d41-b275-f1356f39411f_6000x3376.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Laok!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd456566b-6678-4d41-b275-f1356f39411f_6000x3376.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Laok!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd456566b-6678-4d41-b275-f1356f39411f_6000x3376.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Laok!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd456566b-6678-4d41-b275-f1356f39411f_6000x3376.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Laok!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd456566b-6678-4d41-b275-f1356f39411f_6000x3376.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d456566b-6678-4d41-b275-f1356f39411f_6000x3376.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2094582,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Laok!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd456566b-6678-4d41-b275-f1356f39411f_6000x3376.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Laok!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd456566b-6678-4d41-b275-f1356f39411f_6000x3376.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Laok!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd456566b-6678-4d41-b275-f1356f39411f_6000x3376.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Laok!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd456566b-6678-4d41-b275-f1356f39411f_6000x3376.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Credit: <a href="https://unsplash.com/photos/a-screen-shot-of-a-computer-wtpTL_SzmhM">Unsplash</a></figcaption></figure></div><blockquote><p>Hi!</p><p>Before we start with today&#8217;s article, I&#8217;d like to tell you about something that might be of interest to those interested in Python and data science. DataCamp has an incredible certification program that&#8217;s perfect for you: <a href="https://datacamp.pxf.io/gOOdqr">The Python Data Associate Certification</a>.</p><p>This certification is designed to help you:</p><ul><li><p>Prove your Python skills are ready for real-world application</p></li><li><p>Build credibility in the competitive data industry</p></li><li><p>Land your dream job in the data field</p></li></ul><p>If you&#8217;re serious about standing out in the job market, this certification is the perfect step forward.  To get the certification, you need to <a href="https://datacamp.pxf.io/gOOdqr">register</a>, and then you&#8217;ll have 30 days to conquer a timed exam and practical exam. If you need to give it a second try, Datacamp can help you fill the gaps in your knowledge before you try again.</p><p>What I like about Datacamp is that they offer interactive lessons, practical exercises, and real-world projects. Projects are very useful to put the concepts we learn into practice, and tod&#8230;</p></blockquote>
      <p>
          <a href="https://artificialcorner.com/p/ai-and-python-35-data-science-projects">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[AI & Python #34: Tools That Made My Life Easier When Writing Code]]></title><description><![CDATA[Tools that you need as a beginner programmer.]]></description><link>https://artificialcorner.com/p/ai-and-python-34-tools-that-made</link><guid isPermaLink="false">https://artificialcorner.com/p/ai-and-python-34-tools-that-made</guid><dc:creator><![CDATA[Frank Andrade]]></dc:creator><pubDate>Fri, 06 Dec 2024 13:05:36 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!oIc6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe44aa55c-cf1c-443b-a3ad-d4780361f8d4_800x534.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!oIc6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe44aa55c-cf1c-443b-a3ad-d4780361f8d4_800x534.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!oIc6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe44aa55c-cf1c-443b-a3ad-d4780361f8d4_800x534.jpeg 424w, https://substackcdn.com/image/fetch/$s_!oIc6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe44aa55c-cf1c-443b-a3ad-d4780361f8d4_800x534.jpeg 848w, https://substackcdn.com/image/fetch/$s_!oIc6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe44aa55c-cf1c-443b-a3ad-d4780361f8d4_800x534.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!oIc6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe44aa55c-cf1c-443b-a3ad-d4780361f8d4_800x534.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!oIc6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe44aa55c-cf1c-443b-a3ad-d4780361f8d4_800x534.jpeg" width="800" height="534" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e44aa55c-cf1c-443b-a3ad-d4780361f8d4_800x534.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:534,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!oIc6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe44aa55c-cf1c-443b-a3ad-d4780361f8d4_800x534.jpeg 424w, https://substackcdn.com/image/fetch/$s_!oIc6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe44aa55c-cf1c-443b-a3ad-d4780361f8d4_800x534.jpeg 848w, https://substackcdn.com/image/fetch/$s_!oIc6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe44aa55c-cf1c-443b-a3ad-d4780361f8d4_800x534.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!oIc6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe44aa55c-cf1c-443b-a3ad-d4780361f8d4_800x534.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Image via Shutterstock</figcaption></figure></div><p>As a beginner, I used to come across some roadblocks that slowed down my workflow.</p><p>Sometimes I forgot the format needed to create a cron job, a metacharacter needed to build the right regular expression, etc. The tools listed in this article helped me easily deal with these issues.</p><h4>Regex101: Test your regular expressions</h4><p>Have you been in a situation where you need to match a specific search pattern but can&#8217;t build the regular expression (regex) that does the job?</p><p>You know regex but you just don&#8217;t remember that metacharacter that does the trick or something goes wrong when you build a long regular expression.</p><p>I used to have this issue &#8230; until I found Regex101.</p><p><a href="https://regex101.com/">Regex101</a> is a tool that we can use to test our regular expressions. You only need to type a regex and the text that matches will be highlighted in blue.</p><p>Say we want to identify valid emails with a regular expression.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!SGMa!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F578688e3-620d-4385-9c18-2f2408accb61_428x272.gif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!SGMa!,w_424,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F578688e3-620d-4385-9c18-2f2408accb61_428x272.gif 424w, https://substackcdn.com/image/fetch/$s_!SGMa!,w_848,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F578688e3-620d-4385-9c18-2f2408accb61_428x272.gif 848w, https://substackcdn.com/image/fetch/$s_!SGMa!,w_1272,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F578688e3-620d-4385-9c18-2f2408accb61_428x272.gif 1272w, https://substackcdn.com/image/fetch/$s_!SGMa!,w_1456,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F578688e3-620d-4385-9c18-2f2408accb61_428x272.gif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!SGMa!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F578688e3-620d-4385-9c18-2f2408accb61_428x272.gif" width="428" height="272" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/578688e3-620d-4385-9c18-2f2408accb61_428x272.gif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:272,&quot;width&quot;:428,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!SGMa!,w_424,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F578688e3-620d-4385-9c18-2f2408accb61_428x272.gif 424w, https://substackcdn.com/image/fetch/$s_!SGMa!,w_848,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F578688e3-620d-4385-9c18-2f2408accb61_428x272.gif 848w, https://substackcdn.com/image/fetch/$s_!SGMa!,w_1272,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F578688e3-620d-4385-9c18-2f2408accb61_428x272.gif 1272w, https://substackcdn.com/image/fetch/$s_!SGMa!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F578688e3-620d-4385-9c18-2f2408accb61_428x272.gif 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>As you can see in the gif above, only the first email is highlighted in blue because that&#8217;s the only valid email.</p><h4>Crontab Guru</h4><p>Every time we need to schedule a task on macOS and Linux we create a cron job. This allows us to automate a script to complete a task any time we wish.</p><p>The problem is that if we don&#8217;t create the right cron expressions, the job could never start or fail.</p><p>That&#8217;s why we need to use <a href="https://crontab.guru/">Crontab Guru</a>.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!H9f7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dbb5218-d8a7-4b29-978f-931d682c4918_862x290.gif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!H9f7!,w_424,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dbb5218-d8a7-4b29-978f-931d682c4918_862x290.gif 424w, https://substackcdn.com/image/fetch/$s_!H9f7!,w_848,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dbb5218-d8a7-4b29-978f-931d682c4918_862x290.gif 848w, https://substackcdn.com/image/fetch/$s_!H9f7!,w_1272,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dbb5218-d8a7-4b29-978f-931d682c4918_862x290.gif 1272w, https://substackcdn.com/image/fetch/$s_!H9f7!,w_1456,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dbb5218-d8a7-4b29-978f-931d682c4918_862x290.gif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!H9f7!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dbb5218-d8a7-4b29-978f-931d682c4918_862x290.gif" width="862" height="290" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8dbb5218-d8a7-4b29-978f-931d682c4918_862x290.gif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:290,&quot;width&quot;:862,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!H9f7!,w_424,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dbb5218-d8a7-4b29-978f-931d682c4918_862x290.gif 424w, https://substackcdn.com/image/fetch/$s_!H9f7!,w_848,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dbb5218-d8a7-4b29-978f-931d682c4918_862x290.gif 848w, https://substackcdn.com/image/fetch/$s_!H9f7!,w_1272,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dbb5218-d8a7-4b29-978f-931d682c4918_862x290.gif 1272w, https://substackcdn.com/image/fetch/$s_!H9f7!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dbb5218-d8a7-4b29-978f-931d682c4918_862x290.gif 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Crontab Guru is a quick and simple editor for cron schedule expressions.</p><p>You only need to type the minute, hour, day, and month to see what that expression means in plain English and know when&#8217;s the next time the script is going to be executed.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?"><span>Subscribe now</span></a></p><h4>Strftime</h4><p>Datetime is a very useful module that allows us to work with dates and times in Python. To convert a date/time object to string we need to use the <code>strftime()</code> method as shown below.</p><pre><code><code>from</code> <code>datetime import</code> <code>datetime
now =</code> <code>datetime.now()</code>
<code>now.strftime(&lt;format&gt;)</code></code></pre><p>Simple, right? The thing is, I sometimes forget the format used to convert the date to their string representation.</p><p>Fortunately, there&#8217;s a website called <a href="https://strftime.org/">strftime</a> where you can find a Python strftime cheatsheet.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ikuz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2c5987c-4539-415e-a378-cadf861086c4_797x432.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ikuz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2c5987c-4539-415e-a378-cadf861086c4_797x432.png 424w, https://substackcdn.com/image/fetch/$s_!ikuz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2c5987c-4539-415e-a378-cadf861086c4_797x432.png 848w, https://substackcdn.com/image/fetch/$s_!ikuz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2c5987c-4539-415e-a378-cadf861086c4_797x432.png 1272w, https://substackcdn.com/image/fetch/$s_!ikuz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2c5987c-4539-415e-a378-cadf861086c4_797x432.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ikuz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2c5987c-4539-415e-a378-cadf861086c4_797x432.png" width="797" height="432" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e2c5987c-4539-415e-a378-cadf861086c4_797x432.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:432,&quot;width&quot;:797,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ikuz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2c5987c-4539-415e-a378-cadf861086c4_797x432.png 424w, https://substackcdn.com/image/fetch/$s_!ikuz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2c5987c-4539-415e-a378-cadf861086c4_797x432.png 848w, https://substackcdn.com/image/fetch/$s_!ikuz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2c5987c-4539-415e-a378-cadf861086c4_797x432.png 1272w, https://substackcdn.com/image/fetch/$s_!ikuz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2c5987c-4539-415e-a378-cadf861086c4_797x432.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Now I can easily get today&#8217;s date in the format I want.</p><pre><code>&gt;&gt;&gt; now.strftime("%B %d, %Y")
'October 28, 2022'</code></pre><h4>HTML Editor</h4><p><a href="https://html-online.com/editor/">HTML Editor</a> is a tool that allows us to create HTML documents as if we were typing text in a Word document.</p><p>Say we want to create an HTML document that has a title, paragraph, and list that looks like the one below.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ZNph!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36661c94-5f64-4e73-b50f-99af3d78643e_700x336.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZNph!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36661c94-5f64-4e73-b50f-99af3d78643e_700x336.png 424w, https://substackcdn.com/image/fetch/$s_!ZNph!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36661c94-5f64-4e73-b50f-99af3d78643e_700x336.png 848w, https://substackcdn.com/image/fetch/$s_!ZNph!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36661c94-5f64-4e73-b50f-99af3d78643e_700x336.png 1272w, https://substackcdn.com/image/fetch/$s_!ZNph!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36661c94-5f64-4e73-b50f-99af3d78643e_700x336.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZNph!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36661c94-5f64-4e73-b50f-99af3d78643e_700x336.png" width="700" height="336" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/36661c94-5f64-4e73-b50f-99af3d78643e_700x336.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:336,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ZNph!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36661c94-5f64-4e73-b50f-99af3d78643e_700x336.png 424w, https://substackcdn.com/image/fetch/$s_!ZNph!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36661c94-5f64-4e73-b50f-99af3d78643e_700x336.png 848w, https://substackcdn.com/image/fetch/$s_!ZNph!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36661c94-5f64-4e73-b50f-99af3d78643e_700x336.png 1272w, https://substackcdn.com/image/fetch/$s_!ZNph!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36661c94-5f64-4e73-b50f-99af3d78643e_700x336.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Image by author</figcaption></figure></div><p>Well, we can easily do that with HTML Editor.</p><p>On this website, we only need to type text in the visual editor on the left and it automatically generates its HTML code on the right.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!i_Xd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1872a7d6-fd26-414e-a35d-e8053d8abae0_800x301.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!i_Xd!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1872a7d6-fd26-414e-a35d-e8053d8abae0_800x301.png 424w, https://substackcdn.com/image/fetch/$s_!i_Xd!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1872a7d6-fd26-414e-a35d-e8053d8abae0_800x301.png 848w, https://substackcdn.com/image/fetch/$s_!i_Xd!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1872a7d6-fd26-414e-a35d-e8053d8abae0_800x301.png 1272w, https://substackcdn.com/image/fetch/$s_!i_Xd!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1872a7d6-fd26-414e-a35d-e8053d8abae0_800x301.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!i_Xd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1872a7d6-fd26-414e-a35d-e8053d8abae0_800x301.png" width="800" height="301" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1872a7d6-fd26-414e-a35d-e8053d8abae0_800x301.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:301,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!i_Xd!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1872a7d6-fd26-414e-a35d-e8053d8abae0_800x301.png 424w, https://substackcdn.com/image/fetch/$s_!i_Xd!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1872a7d6-fd26-414e-a35d-e8053d8abae0_800x301.png 848w, https://substackcdn.com/image/fetch/$s_!i_Xd!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1872a7d6-fd26-414e-a35d-e8053d8abae0_800x301.png 1272w, https://substackcdn.com/image/fetch/$s_!i_Xd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1872a7d6-fd26-414e-a35d-e8053d8abae0_800x301.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Image by author</figcaption></figure></div><p>Note that you can use the toolbar to add different elements to the document such as lists, lines, images, links, etc.</p><p>Although there are other alternatives, HTML editor is the best online software with visual preview, inline editor, and markup clean-up feature.</p>
      <p>
          <a href="https://artificialcorner.com/p/ai-and-python-34-tools-that-made">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[AI & Python #33: 4 Python Books That Every Beginner Should Read to Go Beyond The Basics]]></title><description><![CDATA[Move from nooby to advanced Python programmer.]]></description><link>https://artificialcorner.com/p/ai-and-python-33-4-python-books-that</link><guid isPermaLink="false">https://artificialcorner.com/p/ai-and-python-33-4-python-books-that</guid><dc:creator><![CDATA[Frank Andrade]]></dc:creator><pubDate>Wed, 20 Nov 2024 16:49:54 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!gpDO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11331eae-9bb5-49c5-bc99-95665a76c40e_378x499.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>If you&#8217;ve already mastered the basics of Python, know how to automate stuff, and are able to do simple tasks at work, but still feel you could do more, it&#8217;s time to take your Python skills to the next level.</p><p>Probably your current Python skills are enough for your personal projects or to keep your boss happy, but there&#8217;s a lot more to learn! Now you might not pay attention to scalability, readability, and organization when writing code, but if you want to move from beginner to advanced Python programmer, these are some of the topics you should learn next.</p><p>Here are 4 books that cover intermediate and advanced programming concepts that you should learn to go beyond the basic Python stuff.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?"><span>Subscribe now</span></a></p><h3>Object-Oriented Python</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!gpDO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11331eae-9bb5-49c5-bc99-95665a76c40e_378x499.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!gpDO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11331eae-9bb5-49c5-bc99-95665a76c40e_378x499.jpeg 424w, https://substackcdn.com/image/fetch/$s_!gpDO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11331eae-9bb5-49c5-bc99-95665a76c40e_378x499.jpeg 848w, https://substackcdn.com/image/fetch/$s_!gpDO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11331eae-9bb5-49c5-bc99-95665a76c40e_378x499.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!gpDO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11331eae-9bb5-49c5-bc99-95665a76c40e_378x499.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!gpDO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11331eae-9bb5-49c5-bc99-95665a76c40e_378x499.jpeg" width="378" height="499" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/11331eae-9bb5-49c5-bc99-95665a76c40e_378x499.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:499,&quot;width&quot;:378,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!gpDO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11331eae-9bb5-49c5-bc99-95665a76c40e_378x499.jpeg 424w, https://substackcdn.com/image/fetch/$s_!gpDO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11331eae-9bb5-49c5-bc99-95665a76c40e_378x499.jpeg 848w, https://substackcdn.com/image/fetch/$s_!gpDO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11331eae-9bb5-49c5-bc99-95665a76c40e_378x499.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!gpDO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11331eae-9bb5-49c5-bc99-95665a76c40e_378x499.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Image from&nbsp;Amazon</figcaption></figure></div><p>If you have a basic knowledge of Python, you probably write code following a sequence of steps line by line to get things done. As a result, you end up with multiple sections that don&#8217;t have a strong logical connection. This is known as procedural programming, which i&#8230;</p>
      <p>
          <a href="https://artificialcorner.com/p/ai-and-python-33-4-python-books-that">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[AI & Python #32: Software Engineering Practices Anyone Learning Python Should Know]]></title><description><![CDATA[Best practices that you should learn.]]></description><link>https://artificialcorner.com/p/ai-and-python-32-software-engineering</link><guid isPermaLink="false">https://artificialcorner.com/p/ai-and-python-32-software-engineering</guid><dc:creator><![CDATA[Frank Andrade]]></dc:creator><pubDate>Tue, 12 Nov 2024 16:43:19 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!5rJo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d5e4f4f-ec03-4dd3-ab66-e3fba790ea6d_1024x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!5rJo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d5e4f4f-ec03-4dd3-ab66-e3fba790ea6d_1024x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!5rJo!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d5e4f4f-ec03-4dd3-ab66-e3fba790ea6d_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!5rJo!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d5e4f4f-ec03-4dd3-ab66-e3fba790ea6d_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!5rJo!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d5e4f4f-ec03-4dd3-ab66-e3fba790ea6d_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!5rJo!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d5e4f4f-ec03-4dd3-ab66-e3fba790ea6d_1024x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!5rJo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d5e4f4f-ec03-4dd3-ab66-e3fba790ea6d_1024x1024.png" width="1024" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6d5e4f4f-ec03-4dd3-ab66-e3fba790ea6d_1024x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2132402,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!5rJo!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d5e4f4f-ec03-4dd3-ab66-e3fba790ea6d_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!5rJo!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d5e4f4f-ec03-4dd3-ab66-e3fba790ea6d_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!5rJo!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d5e4f4f-ec03-4dd3-ab66-e3fba790ea6d_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!5rJo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d5e4f4f-ec03-4dd3-ab66-e3fba790ea6d_1024x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Let&#8217;s face it, we sometimes don&#8217;t pay attention to things like writing efficient code,  code structure, and maintainability.</p><p>But we should!</p><p>One day you&#8217;ll be part of projects that involve working with other people. This is why we need to write robust code and follow some good practices that software engineers have.</p><p>Here are some software engineering best practices that you should know.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?"><span>Subscribe now</span></a></p><h3>Write Clean&nbsp;Code</h3><p>Writing clean code means writing readable, simple, and concise code. Clean code is the foundation of a script that is easy to maintain.</p><p>Believe me, you&#8217;ll make the lives of your teammates easier by writing code that is easy to understand. Simple is better than complex, so don&#8217;t write complex code that even you might struggle to understand.</p><p>Here&#8217;s an example of writing clean code:</p><pre><code># Imagine we want to write a program that categorizes a task based on its execution time
# Below are two ways of writing this code (one is more clean than the other)

<strong># bad</strong>
t = end - start_time  # get execution time
c = category(t)  # get category of task
print(f'Task Duration: {t} seconds, Category: {c}')

<strong># good</strong>
execution_time = end_time - start_time  # get execution time
category = categorize_task(t)  # get category of task
print(f'Task Duration: {execution_time} seconds, Category: {category}')</code></pre><p>Below are the good practices followed in the previous example:</p><ul><li><p>Use meaningful variable names: Make your variable names explanatory and descriptive. A variable named <code>end</code> isn't as explanatory as <code>end_time. </code>A boolean variable <code>single</code> isn&#8217;t as descriptive as <code>is_single</code>.</p></li><li><p>Don&#8217;t use abbreviations in a variable name that no one will understand (e.g.,<code>t</code> and <code>c</code>).</p></li><li><p>Don&#8217;t write too long variable names that no one will remember.</p></li><li><p>Use indentation and whitespaces properly: There are many conventions here like using four spaces for indentation or separating sections with a blank line. They might be hard to remember; fortunately, IDEs like Pycharm will suggest you follow such conventions and show you how to do it.</p></li><li><p>Follow <a href="https://visualgit.readthedocs.io/en/latest/pages/naming_convention.html">PEP8</a> conventions as much as possible when naming objects (e.g., how to use case convention, when to use an underscore, etc)</p></li></ul><h3>Write Modular&nbsp;Code</h3><p>Modular code means writing code that can be separated into functions and modules.</p><p>A program that can be broken into modules helps when debugging. As a program grows in size, it&#8217;s a good practice to split your code into modules. This lets you easily pinpoint the source of errors.</p><p>Also, modular code will help you avoid repetition and write efficient and reusable code.</p><p>Here&#8216;s some advice to start writing modular code:</p><ul><li><p>Don&#8217;t repeat yourself: If you&#8217;re using the same function/method to accomplish a single task, consider creating a function or a for loop instead.</p></li></ul><pre><code># Imagine we have a list named "numbers" and we want to sum a random number to each element of the list and store it in a new list
# Below are two ways of writing this code (one avoids repetition)

numbers = [10, 20, 30, 40, 50]

<strong># bad</strong>
numbers1 = []
for number in numbers:
    numbers1.append(number+1)

numbers5 = []
for number in numbers:
    numbers5.append(number+5)


<strong># better</strong>
def sum_number(my_list, n):
    return [number + n for number in my_list]

sum_1 = sum_number(numbers, 1)
sum_5 = sum_number(numbers, 5)</code></pre><ul><li><p>Minimize the number of functions, classes, and modules</p></li><li><p>Single responsibility principle: A class/function should have only one responsibility. If they do more than one thing, consider refactoring them to two or more classes/functions.</p></li><li><p>Use modules</p></li></ul><h3>Optimize Your&nbsp;Code</h3><p>Writing code that works is good, but you know what&#8217;s better? Writing efficient code that runs fast and consumes little memory and storage. This is why you should optimize your code (even if it already does the job).</p><p>Writing efficient code isn&#8217;t easy. This is a skill that you&#8217;ll learn over time. That said, here&#8217;s some advice that will help you start writing more efficient code today.</p><ul><li><p>Vectorize your operations: Use vector operations (Numpy) over loops whenever possible.</p></li><li><p>Inspect the running time of every operation: This will help you find bottlenecks in your script.</p></li><li><p>Know your data structures and which methods are faster</p></li></ul><p>Let&#8217;s see an example of how vectorizing your operations can help optimize the performance of your script:</p><pre><code># Imagine we have an array of random exam scores and we want to get the average score of those who failed the exam (score&lt;70)
# Below are two way of solving this problem (one using loops and the other using vector operations)

<strong>import</strong> time
<strong>import</strong> numpy <strong>as</strong> np

random_scores = np.random.randint(1, 100, size=10000001)

<strong># SOL1: solving problem using a for loop</strong>
start = time.time()

count_failed = 0
sum_failed = 0
for score in random_scores:
    if score &lt; 70:
        sum_failed += score
        count_failed += 1

print(sum_failed/count_failed)
print(f'Duration: {time.time() - start} seconds')


<strong># SOL2: solving problem using vector operations</strong>
start = time.time()

mean_failed = (random_scores[random_scores &lt; 70]).mean()
print(mean_failed)

print(f'Duration: {time.time() - start} seconds')</code></pre><p>If you run the snippet above, you&#8217;ll see that both solutions get the same result; however, it takes around 2.57 seconds for solution 1 to get the job done, while solution 2 only needs 0.06 seconds.</p><p>Although this little tweak barely saved us 2 seconds, at a larger scale, it can make a big difference in performance.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?"><span>Subscribe now</span></a></p>
      <p>
          <a href="https://artificialcorner.com/p/ai-and-python-32-software-engineering">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[AI & Python #31: How to Self Study Python And Other Technical Stuff]]></title><description><![CDATA[The 5 steps to master Python, SQL, statistics, and more.]]></description><link>https://artificialcorner.com/p/ai-and-python-31-how-to-self-study</link><guid isPermaLink="false">https://artificialcorner.com/p/ai-and-python-31-how-to-self-study</guid><dc:creator><![CDATA[Frank Andrade]]></dc:creator><pubDate>Thu, 07 Nov 2024 13:31:05 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!jong!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29195d38-1a6c-4a9f-8031-5432b3611b3b_1024x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jong!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29195d38-1a6c-4a9f-8031-5432b3611b3b_1024x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jong!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29195d38-1a6c-4a9f-8031-5432b3611b3b_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!jong!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29195d38-1a6c-4a9f-8031-5432b3611b3b_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!jong!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29195d38-1a6c-4a9f-8031-5432b3611b3b_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!jong!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29195d38-1a6c-4a9f-8031-5432b3611b3b_1024x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jong!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29195d38-1a6c-4a9f-8031-5432b3611b3b_1024x1024.png" width="1024" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/29195d38-1a6c-4a9f-8031-5432b3611b3b_1024x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2143900,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!jong!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29195d38-1a6c-4a9f-8031-5432b3611b3b_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!jong!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29195d38-1a6c-4a9f-8031-5432b3611b3b_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!jong!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29195d38-1a6c-4a9f-8031-5432b3611b3b_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!jong!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29195d38-1a6c-4a9f-8031-5432b3611b3b_1024x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Created with Midjourney</figcaption></figure></div><p>There have never been so many free resources online to learn technical subjects.</p><p><em>Do you want to learn Python? There are thousands of tutorials on Youtube<br>Do you want to practice SQL? You can google SQL exercises with solutions&nbsp;<br>Do you want to learn statistics? Khan Academy has many lectures you need for data science</em></p><p>But when it comes to learning all of this on our own, things get a bit complicated. You might wonder where to start, how to study less and learn more, how to retain more information, how to reach your peak performance when studying, and how to make consistent progress.</p><p>In this article, I&#8217;ll show you the 5 steps I follow to learn Python and other technical stuff.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?"><span>Subscribe now</span></a></p>
      <p>
          <a href="https://artificialcorner.com/p/ai-and-python-31-how-to-self-study">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[AI & Python #30: One-Liners Anyone Learning Python Should Know]]></title><description><![CDATA[Make your Python code concise with these one-liners]]></description><link>https://artificialcorner.com/p/ai-and-python-30-one-liners-anyone</link><guid isPermaLink="false">https://artificialcorner.com/p/ai-and-python-30-one-liners-anyone</guid><dc:creator><![CDATA[Frank Andrade]]></dc:creator><pubDate>Tue, 05 Nov 2024 15:22:10 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!K6pL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98d5d834-72da-457e-a839-61b7019a0a26_1024x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!K6pL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98d5d834-72da-457e-a839-61b7019a0a26_1024x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!K6pL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98d5d834-72da-457e-a839-61b7019a0a26_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!K6pL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98d5d834-72da-457e-a839-61b7019a0a26_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!K6pL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98d5d834-72da-457e-a839-61b7019a0a26_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!K6pL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98d5d834-72da-457e-a839-61b7019a0a26_1024x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!K6pL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98d5d834-72da-457e-a839-61b7019a0a26_1024x1024.png" width="1024" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/98d5d834-72da-457e-a839-61b7019a0a26_1024x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1909802,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!K6pL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98d5d834-72da-457e-a839-61b7019a0a26_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!K6pL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98d5d834-72da-457e-a839-61b7019a0a26_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!K6pL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98d5d834-72da-457e-a839-61b7019a0a26_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!K6pL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98d5d834-72da-457e-a839-61b7019a0a26_1024x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><blockquote><p>Hi!</p><p>Before we start with today&#8217;s article, I have great news for all of you! </p><p>From <strong>November 4th to 10th</strong>, DataCamp is offering <strong><a href="https://datacamp.pxf.io/3JA3gn">unlimited FREE access</a></strong> to their entire learning platform! It&#8217;s the perfect chance to level up your Python, data and AI skills.</p><p>This includes:</p><ul><li><p>Access to 510+ courses, career tracks, and certifications</p></li><li><p>Learn Python, ChatGPT, Power BI, SQL, and more</p></li><li><p>Land your dream job with data and AI skills</p></li></ul><p>Don&#8217;t miss out on this exclusive opportunity. <a href="https://datacamp.pxf.io/3JA3gn">Click here</a> to get free access to Datacamp. In case you don&#8217;t know where to start, I recommend you to try this <a href="https://datacamp.pxf.io/MAn1rn">Python Data Fundamentals</a> course.</p></blockquote><p>When we start learning Python, we usually write code that gets the job done without paying attention to the readability of our code and how concise and efficient it is.</p><p>That&#8217;s fine, but there are ways to make our Python code shorter without neglecting readability. This is what one-liners are all about (if you use them properly).</p><p>Here are 8 one-liners that anyone learning Python should know.</p><h3>1. If&#8202;&#8212;&#8202;Else&#8230;</h3>
      <p>
          <a href="https://artificialcorner.com/p/ai-and-python-30-one-liners-anyone">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[AI & Python #29: Python Projects You Can Finish in a Weekend]]></title><description><![CDATA[Beginner and advanced projects that will help you level up your Python code]]></description><link>https://artificialcorner.com/p/ai-and-python-29-python-projects</link><guid isPermaLink="false">https://artificialcorner.com/p/ai-and-python-29-python-projects</guid><dc:creator><![CDATA[Frank Andrade]]></dc:creator><pubDate>Thu, 31 Oct 2024 13:44:43 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!nw9a!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9c7ea93-3997-4340-90fa-6fd17972b589_1024x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!nw9a!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9c7ea93-3997-4340-90fa-6fd17972b589_1024x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!nw9a!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9c7ea93-3997-4340-90fa-6fd17972b589_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!nw9a!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9c7ea93-3997-4340-90fa-6fd17972b589_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!nw9a!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9c7ea93-3997-4340-90fa-6fd17972b589_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!nw9a!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9c7ea93-3997-4340-90fa-6fd17972b589_1024x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!nw9a!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9c7ea93-3997-4340-90fa-6fd17972b589_1024x1024.png" width="1024" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a9c7ea93-3997-4340-90fa-6fd17972b589_1024x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1803756,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!nw9a!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9c7ea93-3997-4340-90fa-6fd17972b589_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!nw9a!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9c7ea93-3997-4340-90fa-6fd17972b589_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!nw9a!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9c7ea93-3997-4340-90fa-6fd17972b589_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!nw9a!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9c7ea93-3997-4340-90fa-6fd17972b589_1024x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Learning Python can be difficult. You might spend a lot of time watching videos and reading books; however, if you can&#8217;t put all the concepts learned into practice, that time will be wasted.</p><p>This is why you should get your hands dirty with Python projects. A project will help you bring together everything you&#8217;ve learned, stay motivated, build a portfolio, and come up with ways of approaching problems and solving them with code.</p><p>In this article, I listed some projects that helped me level up my Python code and hopefully will help you too. The projects are listed by difficulty, so the beginner projects are in the beginning, while the advanced projects are at the end of the article.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?"><span>Subscribe now</span></a></p>
      <p>
          <a href="https://artificialcorner.com/p/ai-and-python-29-python-projects">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[AI & Python #28: The Notebook Used for Data Science and AI Projects]]></title><description><![CDATA[Let's explore Jupyter Notebook and its extensions that make coding a bit easier]]></description><link>https://artificialcorner.com/p/ai-and-python-28-the-notebook-used</link><guid isPermaLink="false">https://artificialcorner.com/p/ai-and-python-28-the-notebook-used</guid><dc:creator><![CDATA[Frank Andrade]]></dc:creator><pubDate>Wed, 23 Oct 2024 12:59:07 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!ri0B!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5202ca4-15f8-4972-aaf7-a33563846093_800x533.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ri0B!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5202ca4-15f8-4972-aaf7-a33563846093_800x533.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ri0B!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5202ca4-15f8-4972-aaf7-a33563846093_800x533.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ri0B!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5202ca4-15f8-4972-aaf7-a33563846093_800x533.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ri0B!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5202ca4-15f8-4972-aaf7-a33563846093_800x533.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ri0B!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5202ca4-15f8-4972-aaf7-a33563846093_800x533.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ri0B!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5202ca4-15f8-4972-aaf7-a33563846093_800x533.jpeg" width="800" height="533" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b5202ca4-15f8-4972-aaf7-a33563846093_800x533.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:533,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ri0B!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5202ca4-15f8-4972-aaf7-a33563846093_800x533.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ri0B!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5202ca4-15f8-4972-aaf7-a33563846093_800x533.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ri0B!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5202ca4-15f8-4972-aaf7-a33563846093_800x533.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ri0B!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5202ca4-15f8-4972-aaf7-a33563846093_800x533.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Photo by <a href="https://unsplash.com/@max_duz?utm_source=medium&amp;utm_medium=referral">Max Duzij</a> on&nbsp;<a href="https://unsplash.com?utm_source=medium&amp;utm_medium=referral">Unsplash</a></figcaption></figure></div><p>Jupyter Notebook is the computational notebook of choice for data scientists and AI enthusiasts. It allows you to create documents containing not only live code but also equations, visualizations, and text. However, by default, Jupyter Notebook lacks several useful features, such as autocompletion, a table of contents, code folding, etc.</p><p>This is why I made a list of useful Jupyter Notebook extensions that will make your life easier and increase your productivity when writing code.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?"><span>Subscribe now</span></a></p><h3>How to Install Extensions</h3><p>To install extensions, run the following code in the command prompt or terminal</p><pre><code>pip install jupyter_contrib_nbextensions</code></pre><p>Then run the code below to add the nbextensions files into the Jupyter server&#8217;s search directory.</p><pre><code>jupyter contrib nbextension install</code></pre><p>Now open Jupyter Notebooks. There should be a new tab called &#8220;Nbextensions.&#8221; Click on it and you&#8217;ll see a bunch of extensions you can use to increase your productivity on Jupyter Notebooks.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!whkg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd62121b2-7bc5-40b5-8f2d-350718e7f577_1200x553.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!whkg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd62121b2-7bc5-40b5-8f2d-350718e7f577_1200x553.png 424w, https://substackcdn.com/image/fetch/$s_!whkg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd62121b2-7bc5-40b5-8f2d-350718e7f577_1200x553.png 848w, https://substackcdn.com/image/fetch/$s_!whkg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd62121b2-7bc5-40b5-8f2d-350718e7f577_1200x553.png 1272w, https://substackcdn.com/image/fetch/$s_!whkg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd62121b2-7bc5-40b5-8f2d-350718e7f577_1200x553.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!whkg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd62121b2-7bc5-40b5-8f2d-350718e7f577_1200x553.png" width="1200" height="553" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d62121b2-7bc5-40b5-8f2d-350718e7f577_1200x553.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:553,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!whkg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd62121b2-7bc5-40b5-8f2d-350718e7f577_1200x553.png 424w, https://substackcdn.com/image/fetch/$s_!whkg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd62121b2-7bc5-40b5-8f2d-350718e7f577_1200x553.png 848w, https://substackcdn.com/image/fetch/$s_!whkg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd62121b2-7bc5-40b5-8f2d-350718e7f577_1200x553.png 1272w, https://substackcdn.com/image/fetch/$s_!whkg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd62121b2-7bc5-40b5-8f2d-350718e7f577_1200x553.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Image by&nbsp;author</figcaption></figure></div><p>The following are the extensions I find the most useful.</p><h4>Move selected&nbsp;cell</h4><p>This is an extremely useful extension that will allow you to move selected cell(s) using keyboard shortcuts <code>Alt-up</code> and <code>Alt-down</code>. Just check the &#8220;Move selected cell&#8221; box inside Nbextensions. Then, refresh the notebook and you will be able to move cells via simple keystrokes.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!c9TV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fceadd4a0-a22c-4133-b2a5-c83b8447cc43_846x364.gif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!c9TV!,w_424,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fceadd4a0-a22c-4133-b2a5-c83b8447cc43_846x364.gif 424w, https://substackcdn.com/image/fetch/$s_!c9TV!,w_848,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fceadd4a0-a22c-4133-b2a5-c83b8447cc43_846x364.gif 848w, https://substackcdn.com/image/fetch/$s_!c9TV!,w_1272,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fceadd4a0-a22c-4133-b2a5-c83b8447cc43_846x364.gif 1272w, https://substackcdn.com/image/fetch/$s_!c9TV!,w_1456,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fceadd4a0-a22c-4133-b2a5-c83b8447cc43_846x364.gif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!c9TV!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fceadd4a0-a22c-4133-b2a5-c83b8447cc43_846x364.gif" width="846" height="364" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ceadd4a0-a22c-4133-b2a5-c83b8447cc43_846x364.gif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:364,&quot;width&quot;:846,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!c9TV!,w_424,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fceadd4a0-a22c-4133-b2a5-c83b8447cc43_846x364.gif 424w, https://substackcdn.com/image/fetch/$s_!c9TV!,w_848,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fceadd4a0-a22c-4133-b2a5-c83b8447cc43_846x364.gif 848w, https://substackcdn.com/image/fetch/$s_!c9TV!,w_1272,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fceadd4a0-a22c-4133-b2a5-c83b8447cc43_846x364.gif 1272w, https://substackcdn.com/image/fetch/$s_!c9TV!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fceadd4a0-a22c-4133-b2a5-c83b8447cc43_846x364.gif 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Image by&nbsp;author</figcaption></figure></div><h4><strong>E</strong>nable<strong> </strong>autocompletion (Hinterland)</h4><p>This is an extremely useful extension for those who struggle writing code on Jupyter Notebooks because there&#8217;s no autocompletion. By checking the &#8216;Hinterland&#8217; box, you&#8217;ll enable autocompletion on Jupyter Notebooks and would be able to write code like in your favorite editor.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!SB1x!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc21cd93e-d1bf-4911-abb9-167f51fb2181_774x318.gif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!SB1x!,w_424,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc21cd93e-d1bf-4911-abb9-167f51fb2181_774x318.gif 424w, https://substackcdn.com/image/fetch/$s_!SB1x!,w_848,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc21cd93e-d1bf-4911-abb9-167f51fb2181_774x318.gif 848w, https://substackcdn.com/image/fetch/$s_!SB1x!,w_1272,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc21cd93e-d1bf-4911-abb9-167f51fb2181_774x318.gif 1272w, https://substackcdn.com/image/fetch/$s_!SB1x!,w_1456,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc21cd93e-d1bf-4911-abb9-167f51fb2181_774x318.gif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!SB1x!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc21cd93e-d1bf-4911-abb9-167f51fb2181_774x318.gif" width="774" height="318" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c21cd93e-d1bf-4911-abb9-167f51fb2181_774x318.gif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:318,&quot;width&quot;:774,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!SB1x!,w_424,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc21cd93e-d1bf-4911-abb9-167f51fb2181_774x318.gif 424w, https://substackcdn.com/image/fetch/$s_!SB1x!,w_848,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc21cd93e-d1bf-4911-abb9-167f51fb2181_774x318.gif 848w, https://substackcdn.com/image/fetch/$s_!SB1x!,w_1272,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc21cd93e-d1bf-4911-abb9-167f51fb2181_774x318.gif 1272w, https://substackcdn.com/image/fetch/$s_!SB1x!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc21cd93e-d1bf-4911-abb9-167f51fb2181_774x318.gif 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Image by&nbsp;author</figcaption></figure></div><blockquote><p><em>Explore the complete list of extensions handpicked by me by becoming a paid subscriber :)</em></p></blockquote>
      <p>
          <a href="https://artificialcorner.com/p/ai-and-python-28-the-notebook-used">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[AI & Python #27: Books I Read to Learn Data Science and Machine Learning]]></title><description><![CDATA[Books handpicked by me.]]></description><link>https://artificialcorner.com/p/ai-and-python-27-books-i-read-to</link><guid isPermaLink="false">https://artificialcorner.com/p/ai-and-python-27-books-i-read-to</guid><dc:creator><![CDATA[Frank Andrade]]></dc:creator><pubDate>Wed, 16 Oct 2024 14:40:45 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!VjK1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F897cc1c7-b7ad-451b-a7de-40bdbece9186_800x517.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!VjK1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F897cc1c7-b7ad-451b-a7de-40bdbece9186_800x517.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!VjK1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F897cc1c7-b7ad-451b-a7de-40bdbece9186_800x517.jpeg 424w, https://substackcdn.com/image/fetch/$s_!VjK1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F897cc1c7-b7ad-451b-a7de-40bdbece9186_800x517.jpeg 848w, https://substackcdn.com/image/fetch/$s_!VjK1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F897cc1c7-b7ad-451b-a7de-40bdbece9186_800x517.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!VjK1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F897cc1c7-b7ad-451b-a7de-40bdbece9186_800x517.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!VjK1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F897cc1c7-b7ad-451b-a7de-40bdbece9186_800x517.jpeg" width="800" height="517" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/897cc1c7-b7ad-451b-a7de-40bdbece9186_800x517.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:517,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Stack of books&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Stack of books" title="Stack of books" srcset="https://substackcdn.com/image/fetch/$s_!VjK1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F897cc1c7-b7ad-451b-a7de-40bdbece9186_800x517.jpeg 424w, https://substackcdn.com/image/fetch/$s_!VjK1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F897cc1c7-b7ad-451b-a7de-40bdbece9186_800x517.jpeg 848w, https://substackcdn.com/image/fetch/$s_!VjK1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F897cc1c7-b7ad-451b-a7de-40bdbece9186_800x517.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!VjK1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F897cc1c7-b7ad-451b-a7de-40bdbece9186_800x517.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Photo by <a href="https://unsplash.com/@epicantus?utm_source=medium&amp;utm_medium=referral">Daria Nepriakhina</a> on&nbsp;<a href="https://unsplash.com?utm_source=medium&amp;utm_medium=referral">Unsplash</a></figcaption></figure></div><p>I&#8217;ve made a list of 5 books I read some years ago.</p><p>I recommend reading them if you&#8217;ve been dabbling in data science, ML, or AI and would like to learn them from scratch. Also, the books are great for those with some previous knowledge of Python, statistics, or math and would like to know how that knowledge can be used in data science, ML, and AI.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?"><span>Subscribe now</span></a></p><h3>#1 &#8220;Data Science from Scratch: First Principles with Python&#8221; by Joel&nbsp;Grus</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!TT4C!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3546f69-fde3-4fd9-9d7f-bda59d63376b_381x499.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!TT4C!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3546f69-fde3-4fd9-9d7f-bda59d63376b_381x499.jpeg 424w, https://substackcdn.com/image/fetch/$s_!TT4C!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3546f69-fde3-4fd9-9d7f-bda59d63376b_381x499.jpeg 848w, https://substackcdn.com/image/fetch/$s_!TT4C!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3546f69-fde3-4fd9-9d7f-bda59d63376b_381x499.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!TT4C!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3546f69-fde3-4fd9-9d7f-bda59d63376b_381x499.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!TT4C!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3546f69-fde3-4fd9-9d7f-bda59d63376b_381x499.jpeg" width="381" height="499" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b3546f69-fde3-4fd9-9d7f-bda59d63376b_381x499.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:499,&quot;width&quot;:381,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!TT4C!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3546f69-fde3-4fd9-9d7f-bda59d63376b_381x499.jpeg 424w, https://substackcdn.com/image/fetch/$s_!TT4C!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3546f69-fde3-4fd9-9d7f-bda59d63376b_381x499.jpeg 848w, https://substackcdn.com/image/fetch/$s_!TT4C!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3546f69-fde3-4fd9-9d7f-bda59d63376b_381x499.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!TT4C!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3546f69-fde3-4fd9-9d7f-bda59d63376b_381x499.jpeg 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Book cover image from&nbsp;<a href="https://www.amazon.com/Joel-Grus/dp/149190142X">Amazon</a></figcaption></figure></div><p>This book aims to help you develop the hacking skills necessary to get started doing data science. After reading the book, you&#8217;d be comfortable with the maths and statistics that are at the core of data science. Although there&#8217;s a chapter in this book called &#8220;A Crash Course in Python,&#8221; the book&#8217;s goal is not to teach you Python from scratch, so, in case you have never written code in Python, you should supplement this book with <a href="https://artificialcorner.com/p/behind-ai-16-4-python-books-i-read">one of my recommended Python books for beginners</a>.</p><p>The book is packed with topics that every data scientist should be familiar with in the fields of statistics (probability, hypothesis, and inference), linear algebra (vectors and matrices), and machine learning (theory and concepts behind machine learning models).</p><p>Keep in mind that this first book mostly gives an overview of the topics mentioned before. To dive deeper into these topics, consider reading the books listed below in no particular order.</p>
      <p>
          <a href="https://artificialcorner.com/p/ai-and-python-27-books-i-read-to">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[AI & Python #26: A Super-Fast Way to Loop in Python]]></title><description><![CDATA[Do you think Python is slow? Here's a fast way to loop in Python]]></description><link>https://artificialcorner.com/p/ai-and-python-26-a-super-fast-way</link><guid isPermaLink="false">https://artificialcorner.com/p/ai-and-python-26-a-super-fast-way</guid><dc:creator><![CDATA[Frank Andrade]]></dc:creator><pubDate>Wed, 02 Oct 2024 12:43:46 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!MsTd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfddae5e-1293-49bc-a7de-46f704342730_800x640.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MsTd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfddae5e-1293-49bc-a7de-46f704342730_800x640.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MsTd!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfddae5e-1293-49bc-a7de-46f704342730_800x640.png 424w, https://substackcdn.com/image/fetch/$s_!MsTd!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfddae5e-1293-49bc-a7de-46f704342730_800x640.png 848w, https://substackcdn.com/image/fetch/$s_!MsTd!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfddae5e-1293-49bc-a7de-46f704342730_800x640.png 1272w, https://substackcdn.com/image/fetch/$s_!MsTd!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfddae5e-1293-49bc-a7de-46f704342730_800x640.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MsTd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfddae5e-1293-49bc-a7de-46f704342730_800x640.png" width="800" height="640" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bfddae5e-1293-49bc-a7de-46f704342730_800x640.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:640,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!MsTd!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfddae5e-1293-49bc-a7de-46f704342730_800x640.png 424w, https://substackcdn.com/image/fetch/$s_!MsTd!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfddae5e-1293-49bc-a7de-46f704342730_800x640.png 848w, https://substackcdn.com/image/fetch/$s_!MsTd!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfddae5e-1293-49bc-a7de-46f704342730_800x640.png 1272w, https://substackcdn.com/image/fetch/$s_!MsTd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfddae5e-1293-49bc-a7de-46f704342730_800x640.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Image via Shutterstock</figcaption></figure></div><p>Python is known for being a slow programming language. Although it&#8217;s a fact that Python is slower than other languages, there are some ways to speed up our Python code.</p><p>How? Simple, optimize your code.</p><p>If we write code that consumes little memory and storage, we&#8217;ll not only get the job done but also make our Python code run faster.</p><p>Here&#8217;s a fast and also a super-fast way to loop in Python.</p><h3>The average&nbsp;loop</h3><p>Say we want to sum the numbers from 1 to 100000000 (we might never do that but that big number will help me make my point).</p><p>A typical approach would be to create a variable <code>total_sum=0</code>, loop through a range and increment the value of <code>total_sum</code> by <code>i</code> on every iteration.</p><pre><code><strong>import</strong> time

start = time.time()

total_sum = 0
for i in range(100000000):
    total_sum += i

print(f'Sum: {total_sum}')
print(f'For loop: {time.time() - start} seconds')</code></pre><p>This gets the job done, but it takes around 6.58<strong> </strong>seconds.</p><p>Although that doesn&#8217;t look so slow now, it&#8217;ll get slower as you add more 0s to the number inside the range.</p><p>Let&#8217;s speed this up!</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://artificialcorner.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://artificialcorner.com/subscribe?"><span>Subscribe now</span></a></p>
      <p>
          <a href="https://artificialcorner.com/p/ai-and-python-26-a-super-fast-way">
              Read more
          </a>
      </p>
   ]]></content:encoded></item></channel></rss>