<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: 1Blademaster</title>
    <description>The latest articles on DEV Community by 1Blademaster (@1blademaster).</description>
    <link>https://dev.to/1blademaster</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F548661%2F6c2ffd6a-21b5-475d-b783-7469a785f3bd.jpeg</url>
      <title>DEV Community: 1Blademaster</title>
      <link>https://dev.to/1blademaster</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/1blademaster"/>
    <language>en</language>
    <item>
      <title>Using Matplotlib to Plot a Live Graph of Benford's Law in Python</title>
      <dc:creator>1Blademaster</dc:creator>
      <pubDate>Thu, 08 Apr 2021 16:45:00 +0000</pubDate>
      <link>https://dev.to/1blademaster/using-matplotlib-to-plot-a-live-graph-of-benford-s-law-in-python-4ngk</link>
      <guid>https://dev.to/1blademaster/using-matplotlib-to-plot-a-live-graph-of-benford-s-law-in-python-4ngk</guid>
      <description>&lt;p&gt;Check out the article &lt;a href="https://itnext.io/using-matplotlib-to-plot-a-live-graph-of-benfords-law-in-python-79ec2e987694"&gt;here&lt;/a&gt; to learn more about Benford's Law and how to graph it in Python!&lt;/p&gt;

&lt;p&gt;Have fun! 💖&lt;/p&gt;

</description>
      <category>programming</category>
      <category>python</category>
      <category>mathematics</category>
    </item>
    <item>
      <title>How I calculated the 1,000,000th Fibonacci number with Python</title>
      <dc:creator>1Blademaster</dc:creator>
      <pubDate>Mon, 05 Apr 2021 17:12:46 +0000</pubDate>
      <link>https://dev.to/1blademaster/how-i-calculated-the-1-000-000th-fibonacci-number-with-python-23gk</link>
      <guid>https://dev.to/1blademaster/how-i-calculated-the-1-000-000th-fibonacci-number-with-python-23gk</guid>
      <description>&lt;p&gt;Hi there, I just wanted to tell you about interesting journey while trying to calculate huge numbers of the Fibonacci series, and all the roadblocks I faced along the way. You can read about it all on my medium page here &lt;a href="https://kushm.medium.com/how-i-calculated-the-1-000-000th-fibonacci-number-with-python-e921d3642dbf"&gt;here&lt;/a&gt;! If you had any questions then feel free to ask me! &lt;/p&gt;

&lt;p&gt;3 Facts about the millionth number in the sequence:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The number is 208,988 digits long&lt;/li&gt;
&lt;li&gt;The number takes 209KB of storage to store in a text file&lt;/li&gt;
&lt;li&gt;This is what the number looks like &lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Thank you for reading! 💖&lt;/p&gt;

</description>
      <category>python</category>
      <category>computerscience</category>
      <category>mathematics</category>
    </item>
    <item>
      <title>A quick tour of the Python Secrets module</title>
      <dc:creator>1Blademaster</dc:creator>
      <pubDate>Sun, 04 Apr 2021 10:45:51 +0000</pubDate>
      <link>https://dev.to/1blademaster/the-python-secrets-module-1c3</link>
      <guid>https://dev.to/1blademaster/the-python-secrets-module-1c3</guid>
      <description>&lt;p&gt;Cover photo by &lt;a href="https://unsplash.com/@hishahadat?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Shahadat Rahman&lt;/a&gt; on &lt;a href="https://unsplash.com/s/photos/security?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditCopyText"&gt;Unsplash&lt;/a&gt;. 📷&lt;/p&gt;

&lt;h1&gt;
  
  
  What is secrets?
&lt;/h1&gt;

&lt;p&gt;The secrets built-in Python module is used to &lt;strong&gt;generate cryptographically secure random numbers&lt;/strong&gt;, but it can be used in more than one way. You might say that you could use the random module to generate these random numbers, but the secrets module has access to the most secure source of randomness that your computer can provide. This makes it perfect for a multitude of uses such as managing passwords, authentication, and security tokens.&lt;/p&gt;

&lt;p&gt;The module has 3 main functions which you will most likely use, but to get started you can import the module using:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;secrets&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h1&gt;
  
  
  How do I use the module?
&lt;/h1&gt;

&lt;p&gt;Here we will look at the 3 most used functions in the secrets module, all of these modules can take in an integer as an argument, this depicts the number of bytes to use in the function.&lt;/p&gt;

&lt;p&gt;The first function is &lt;code&gt;token_bytes&lt;/code&gt; and this returns a random byte string:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;secrets&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;token_bytes&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;16&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="c1"&gt;# b'\xa50\xd1\xdcE\x9d&amp;lt;\x12\x81&amp;lt;\xf4\x8b:?\xce\xfe'
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;




&lt;p&gt;But what if you wanted to generate a random string? Well for that job you can use the &lt;code&gt;token_hex&lt;/code&gt; function as it returns a random string of hex digits:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;secrets&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;token_hex&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;16&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="c1"&gt;# 'c3696cfb5ca4605a48764a1b14c8096a'
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;You might notice that the length of the string returned is exactly double the value of bytes which was passed into the function. This is because each byte consists of 8 bits, and each hex digit can represent 4 bits in total.&lt;/p&gt;



&lt;p&gt;If you needed to use a generated token in a URL, then the &lt;code&gt;token_urlsafe&lt;/code&gt; is for you. This will return a random string which is URL safe as it is Base64 encoded, making this function perfect for use in temporary URL's.&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;secrets&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;token_urlsafe&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;16&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="c1"&gt;# 'DfpKRcWH50lOVjllN4t2ww'
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h4&gt;
  
  
  Note that;
&lt;/h4&gt;

&lt;p&gt;You don't actually have to pass in an integer argument, the functions are assigned a default value, which as of April 2021 is 32 bytes. This is so that any strings generated are cryptographically secure in terms of todays hardware. This means that this number might change in the future as hardware becomes more powerful and affordable. In any programs which require high security, always use a higher number of bits as that would make it much harder for someone to try and brute-force their way into your system. &lt;/p&gt;
&lt;h1&gt;
  
  
  An extended example
&lt;/h1&gt;

&lt;p&gt;The secrets module also contains a few other functions such as &lt;code&gt;choice&lt;/code&gt;, &lt;code&gt;randbelow&lt;/code&gt; and &lt;code&gt;randbits&lt;/code&gt; which perform similar operations to their counterparts in the standard random module, but with higher security measures.&lt;/p&gt;

&lt;p&gt;One of the most popular uses of the secret module is to generate passwords, and you can also generate secure passwords with certain conditions such as:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The length has to be 12 characters&lt;/li&gt;
&lt;li&gt;There must be at least 1 uppercase character&lt;/li&gt;
&lt;li&gt;There must be at least 1 lowercase character&lt;/li&gt;
&lt;li&gt;There must be at least 1 number&lt;/li&gt;
&lt;li&gt;There must be 1 special character&lt;/li&gt;
&lt;/ol&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;



&lt;h1&gt;
  
  
  Final thoughts
&lt;/h1&gt;

&lt;p&gt;If you want any more information, then &lt;a href="https://docs.python.org/3/library/secrets.html"&gt;here&lt;/a&gt; is a link to the official documentation on the secrets module. If you had any other questions then feel free to comment down below.&lt;/p&gt;

&lt;p&gt;Thank you for reading! 💖&lt;/p&gt;

</description>
      <category>python</category>
      <category>cryptography</category>
      <category>computerscience</category>
    </item>
    <item>
      <title>Creating a Sudoku Solver and Generator with Python</title>
      <dc:creator>1Blademaster</dc:creator>
      <pubDate>Fri, 02 Apr 2021 10:17:06 +0000</pubDate>
      <link>https://dev.to/1blademaster/creating-a-sudoku-solver-and-generator-with-python-8mg</link>
      <guid>https://dev.to/1blademaster/creating-a-sudoku-solver-and-generator-with-python-8mg</guid>
      <description>&lt;h1&gt;
  
  
  Introduction
&lt;/h1&gt;

&lt;p&gt;I recently created a 3-part tutorial on medium on how to create a sudoku engine which was capable of solving and generating sudoku's. A sudoku which has been generated can also be saved as a string, this makes it easier for the exportation of sudoku's. Bear in mind that the algorithms I show you in the tutorial are very &lt;a href="https://www.freecodecamp.org/news/what-is-a-greedy-algorithm/"&gt;greedy&lt;/a&gt; since a lot of recursion is used. &lt;a href="https://github.com/1Blademaster/sudoku_engine"&gt;Here&lt;/a&gt; is a link to the Github repo as well if you wanted to browse through the code.&lt;/p&gt;

&lt;p&gt;Since this is a 3-part series, I've added links to all the 3 parts below:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;a href="https://kushm.medium.com/building-a-sudoku-solver-and-generator-in-python-1-3-f29d3ede6b23"&gt;Introduction and creation of the solver&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kushm.medium.com/building-a-sudoku-solver-and-generator-in-python-2-3-5eef3141702c"&gt;Starting the generator 1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kushm.medium.com/building-a-sudoku-solver-and-generator-in-python-3-3-cac73d340973"&gt;Finishing the generator 2&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h1&gt;
  
  
  Example Usage
&lt;/h1&gt;

&lt;p&gt;You can use the tutorial to create a Board class which can further be imported into any of your scripts/programs as shown:&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;
 

&lt;h1&gt;
  
  
  Final Thoughts
&lt;/h1&gt;

&lt;p&gt;If you have any suggestions, advice or questions then please feel free to leave a comment and I shall answer everything.&lt;/p&gt;

&lt;p&gt;Thank you for reading! 💖&lt;/p&gt;

</description>
      <category>python</category>
      <category>algorithms</category>
      <category>computerscience</category>
    </item>
    <item>
      <title>Sign-up Form Automation with Python</title>
      <dc:creator>1Blademaster</dc:creator>
      <pubDate>Sun, 28 Mar 2021 01:33:05 +0000</pubDate>
      <link>https://dev.to/1blademaster/sign-up-form-automation-with-python-6hg</link>
      <guid>https://dev.to/1blademaster/sign-up-form-automation-with-python-6hg</guid>
      <description>&lt;p&gt;Today I will help you automate sign-up form automation with Python and Selenium by using a quick script which I wrote previously. This script will allow you to generate random data, fetch burner emails and use proxies to bypass IP blocks as well as allowing you to manually sign bot captures.&lt;/p&gt;

&lt;h2&gt;
  
  
  First things first
&lt;/h2&gt;

&lt;p&gt;Firstly, make sure you have python 3.7 or above installed, once that's done you can clone this &lt;a href="https://github.com/1Blademaster/account-creator"&gt;Github repo&lt;/a&gt; into your working directory. &lt;/p&gt;

&lt;p&gt;You can then use &lt;code&gt;pip install -r requirements.txt&lt;/code&gt; to install all the necessary requirements for the script. &lt;/p&gt;

&lt;p&gt;Next make sure you have &lt;em&gt;geckodriver.exe&lt;/em&gt; in your path or in the same directory as the &lt;em&gt;account_creator.py&lt;/em&gt; file. This is the Firefox browser which selenium uses to control and automate. You can download it from &lt;a href="https://github.com/mozilla/geckodriver/releases"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Next, creating a new python script
&lt;/h2&gt;

&lt;p&gt;This is the script which we will execute to run the sign-up automation. Go ahead and make a new python file and start by adding the following line of code:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;from&lt;/span&gt; &lt;span class="nn"&gt;account_creator&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;AccountCreator&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This will import the AccountCreator class into your script, you need to make sure this file is in the same directory as &lt;em&gt;account_creator.py&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Underneath that add the following lines of Python:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;signup_site&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;input&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;'Enter the site you want to create an account for: '&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="n"&gt;ac&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;AccountCreator&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;url&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;signup_site&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="n"&gt;ac&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;enterData&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;

&lt;span class="n"&gt;ac&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;close&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;These lines will capture a website url from a user input and then initilise the AccountCreator class with the url being passed in as an argument. The enterData method will then be called; this will create bogus data, as well as making a new window to get a burner email address from 10minutemail. This window will remain open until the close method is called, this is so that the inbox can easily be accessed. The enterData method will then try it's best to enter the data generated into the webform. Calling the close method closes all windows.&lt;/p&gt;

&lt;h2&gt;
  
  
  Extra stuffs
&lt;/h2&gt;

&lt;p&gt;If you wanted to run the script with a proxy then you can use the &lt;a href="https://pypi.org/project/http-request-randomizer/"&gt;http-request-randomizer&lt;/a&gt; library by installing it via &lt;code&gt;pip install http-request-randomizer&lt;/code&gt;. Then simply copy the following code into a file and run it!&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="c1"&gt;# This is a simple script which fetches a proxy and uses it to access a website
&lt;/span&gt;
&lt;span class="kn"&gt;from&lt;/span&gt; &lt;span class="nn"&gt;account_creator&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;AccountCreator&lt;/span&gt;
&lt;span class="kn"&gt;from&lt;/span&gt; &lt;span class="nn"&gt;http_request_randomizer.requests.proxy.requestProxy&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;RequestProxy&lt;/span&gt;

&lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;__name__&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="s"&gt;'__main__'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="n"&gt;signup_site&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;input&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;'Enter the site you want to create an account for: '&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

    &lt;span class="n"&gt;req_proxy&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;RequestProxy&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
    &lt;span class="n"&gt;proxies&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;req_proxy&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;get_proxy_list&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
    &lt;span class="n"&gt;proxies&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;proxy&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;proxy&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;req_proxy&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;get_proxy_list&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;proxy&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;country&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="s"&gt;'United Kingdom'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="c1"&gt;# Get a list of proxies from the United Kingdom
&lt;/span&gt;    &lt;span class="n"&gt;proxyStr&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;proxies&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="n"&gt;get_address&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="c1"&gt;# Get the string for the proxy in the format IP:PORT
&lt;/span&gt;
    &lt;span class="n"&gt;ac&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;AccountCreator&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;proxyStr&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;proxyStr&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;url&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;signup_site&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

    &lt;span class="n"&gt;ac&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;enterData&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;

    &lt;span class="n"&gt;ac&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;close&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This script will get a list of free proxies to use and create browser windows using those proxies.&lt;/p&gt;

&lt;h4&gt;
  
  
  Links
&lt;/h4&gt;

&lt;p&gt;Github repo: &lt;a href="https://github.com/1Blademaster/account-creator"&gt;https://github.com/1Blademaster/account-creator&lt;/a&gt;&lt;br&gt;
proxy module: &lt;a href="https://pypi.org/project/http-request-randomizer/"&gt;https://pypi.org/project/http-request-randomizer/&lt;/a&gt;&lt;br&gt;
geckodriver: &lt;a href="https://github.com/mozilla/geckodriver/releases"&gt;https://github.com/mozilla/geckodriver/releases&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Final notes
&lt;/h2&gt;

&lt;p&gt;The &lt;em&gt;names.txt&lt;/em&gt; file supplied contains a list of 200 random first and last names, this can be edited to suit your use case if needed. &lt;/p&gt;

&lt;p&gt;All data generated will also be saved in an &lt;em&gt;accounts.txt&lt;/em&gt; file so those credentials can be accessed at a later date.&lt;/p&gt;

&lt;p&gt;This is my first post, and hopefully not my last, so any advice is greatly appreciated and thank you for reading 💖!&lt;/p&gt;

</description>
      <category>python</category>
      <category>webdev</category>
      <category>programming</category>
      <category>opensource</category>
    </item>
  </channel>
</rss>
