<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Oluwatoyin Ariyo</title>
    <description>The latest articles on Forem by Oluwatoyin Ariyo (@toyinariyo).</description>
    <link>https://forem.com/toyinariyo</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%2F1000921%2F6a80047d-097d-4263-bc8e-8a2d10239aa5.jpeg</url>
      <title>Forem: Oluwatoyin Ariyo</title>
      <link>https://forem.com/toyinariyo</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/toyinariyo"/>
    <language>en</language>
    <item>
      <title>100 Days of Code Day 11</title>
      <dc:creator>Oluwatoyin Ariyo</dc:creator>
      <pubDate>Fri, 10 Feb 2023 15:29:18 +0000</pubDate>
      <link>https://forem.com/toyinariyo/100-days-of-code-day-11-4h2p</link>
      <guid>https://forem.com/toyinariyo/100-days-of-code-day-11-4h2p</guid>
      <description>&lt;p&gt;Day 11 of Angela Yu's Python bootcamp was spent building a capstone project which was a Blackjack game which uses all of the concepts I have learnt about so far (functions, while loops, range() function, random module, indexes in lists, functions with inputs). The reason why there is a 2 week gap over the last blogpost is because I have discovered other Python resources that have taught me about Python concepts such as &lt;a href="https://www.pythonmorsels.com/" rel="noopener noreferrer"&gt;Python Morsels&lt;/a&gt;, which gives out short videos on Python features and several Python exercises with pre-defined tests and is categorised by difficulty level. I also have been learning Python through &lt;a href="https://boot.dev" rel="noopener noreferrer"&gt;Boot.dev&lt;/a&gt;, a bootcamp for back-end development which has courses for Python, JavaScript and Go. &lt;/p&gt;

&lt;p&gt;For this project, the code used is a simple implementation of the card game Blackjack. The game starts by dealing 2 cards to both the player and the computer. The player can choose to hit (draw another card) or stand (keep their current hand). If the player's score exceeds 21, they lose the game. If the player stands, the computer will draw cards until it reaches a score of 17 or higher. The game then ends, and the scores are compared to determine the winner. A player wins if their score is higher than the computer's score and has not gone over 21. The game also checks for a Blackjack (an Ace and a 10-point card) and if either the player or computer gets a blackjack, that player wins the game. The game outputs the final hands and scores of both the player and computer, and the result of the game.&lt;/p&gt;

&lt;p&gt;Here's the Python code used:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# Hint 4: Create a deal_card() function that uses the List below to *return* a random card. 11 is the Ace.
import random
import os
from art import logo


def cls():  # Cross-platform clear screen
    os.system('cls' if os.name == 'nt' else 'clear')


# Hint 4: Create a function called deal_card() that uses a list to return a random card. 11 is the Ace.
def deal_card():
    cards = [11, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10, 10]
    card = random.choice(cards)
    return card


# Hint 6: Create a function called calculate_score() that takes a List of cards as input and returns the score.
def calculate_score(cards):
    # Hint 7: Inside calculate_score() check for a blackjack (a hand with only 2 cards: ace + 10) and return 0.
    # 0 will represent a blackjack in our game.
    if sum(cards) == 21 and len(cards) == 2:
        return 0
    # Hint 8: Inside calculate_score() check for an 11 (ace).
    # If the score is already over 21, remove the 11 and replace it with a 1.
    if 11 in cards and sum(cards) &amp;gt; 21:
        cards.remove(11)
        cards.append(1)
    return sum(cards)


# Hint 13: Create a function called compare() and pass in the user_score and computer_score.
# If the computer and user both have the same score, then it's a draw.
# If the computer has a blackjack (0), then the user loses. If the user has a blackjack (0), then the user wins.
# If the user_score is over 21, then the user loses. If the computer_score is over 21, then the computer loses.
# If none of the above, then the player with the highest score wins.
def compare(player_score, computer_score):
    if player_score &amp;gt; 21 and computer_score &amp;gt; 21:
        return "You went over 21. You lose."
    if player_score == computer_score:
        return "Draw."
    elif computer_score == 0:
        return "Computer has Blackjack."
    elif player_score == 0:
        return "Congratulations, you got a Blackjack!"
    elif player_score &amp;gt; 21:
        return "You went over 21. You lose."
    elif computer_score &amp;gt; 21:
        return "Computer went over 21. You win!"
    elif player_score &amp;gt; computer_score:
        return "You win!"
    else:
        return "You lose."


def play_game():
    print(logo)
    # Hint 5: Deal the user and computer 2 cards each using deal_card()
    player_cards = []
    computer_cards = []
    game_over = False
    for _ in range(2):
        player_cards.append(deal_card())
        computer_cards.append(deal_card())
    # Hint 11: The score will need to be rechecked with every new card drawn.
    # The checks in Hint 9 need to be repeated until the game ends.
    while not game_over:
        # Hint 9: Call calculate_score().
        # If the computer or the user has a blackjack (0) or if the user's score is over 21, then the game ends.
        player_score = calculate_score(player_cards)
        computer_score = calculate_score(computer_cards)
        print(f"Your cards: {player_cards}, your current score is: {player_score}")
        print(f"Computer's first card: {computer_cards[0]}")
        if player_score == 0 or computer_score == 0 or player_score &amp;gt; 21:
            game_over = True
        else:
            # Hint 10: If the game has not ended, ask the user if they want to draw another card.
            # If yes, then use the deal_card() function to add another card to the user_cards List.
            # If no, then the game has ended.
            player_deals_again = input("Type 'y' to get another card or type 'n' to pass: ")
            if player_deals_again == "y":
                player_cards.append(deal_card())
            else:
                game_over = True
        # Hint 12: Once the user is done, it's time to let the computer play.
        # The computer should keep drawing cards as long as it has a score less than 17.
        while computer_score != 0 and computer_score &amp;lt; 17:
            computer_cards.append(deal_card())
            computer_score = calculate_score(computer_cards)
        print(f"Your final hand: {player_cards}, your final score is: {player_score}")
        print(f"Computer's final hand: {computer_cards}, computer's final score is: {computer_score}")
        print(compare(player_score, computer_score))


# Hint 14: Ask the player to restart the game.
# If they answer yes, clear the console and start a new game of blackjack and show the logo from art.py.
while input("Do you want to play a game of Blackjack? Type 'y' for yes or 'n' for no: ") == "y":
    cls()
    play_game()
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Like my other daily projects, I converted the above code to C#:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;internal class Program
{
    private static void Main(string[] args)
    {
        PlayGame();
    }

    static void ClearScreen()
    {
        Console.Clear();
    }

    static int DealCard()
    {
        List&amp;lt;int&amp;gt; cards = new List&amp;lt;int&amp;gt; { 11, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10, 10 };
        Random random = new Random();
        int card = cards[random.Next(0, cards.Count)];
        return card;
    }

    static int CalculateScore(List&amp;lt;int&amp;gt; cards)
    {
        if (cards.Sum() == 21 &amp;amp;&amp;amp; cards.Count == 2)
        {
            return 0;
        }
        if (cards.Contains(11) &amp;amp;&amp;amp; cards.Sum() &amp;gt; 21)
        {
            cards.Remove(11);
            cards.Add(1);
        }
        return cards.Sum();
    }

    static string Compare(int playerScore, int computerScore)
    {
        if (playerScore &amp;gt; 21 &amp;amp;&amp;amp; computerScore &amp;gt; 21) {
            return "You went over 21. You lose";
        }
        else if (playerScore == computerScore)
        {
            return "Draw";
        }
        else if (computerScore == 0)
        {
            return "Computer has Blackjack";
        }
        else if (playerScore == 0)
        {
            return "Congratulations! You got a Blackjack";
        }
        else if (playerScore &amp;gt; 21)
        {
            return "You went over 21. You lose";
        }
        else if (computerScore &amp;gt; 21)
        {
            return "Computer went over 21. You win!";
        }
        else if (playerScore &amp;gt; computerScore)
        {
            return "You win";
        }
        else
        {
            return "You lose.";
        }
    }

    static void PlayGame()
    {
        ClearScreen();
        List&amp;lt;int&amp;gt; playerCards = new List&amp;lt;int&amp;gt;();
        List&amp;lt;int&amp;gt; computerCards = new List&amp;lt;int&amp;gt;();
        bool gameOver = false;
        for (int i = 0; i &amp;lt; 2; i++)
        {
            playerCards.Add(DealCard());
            computerCards.Add(DealCard());
        }
        while (!gameOver)
        {
            int playerScore = CalculateScore(playerCards);
            int computerScore = CalculateScore(computerCards);
            Console.WriteLine("Your cards: " + String.Join(", ", playerCards) + ", your current score is: " + playerScore);
            Console.WriteLine("Computer's first card: " + computerCards[0]);
            if (playerScore == 0 || computerScore == 0 || playerScore &amp;gt; 21)
            {
                gameOver = true;
            }
            else
            {
                Console.WriteLine("Type 'y' to get another card or type 'n' to pass: ");
                string playerDealsAgain = Console.ReadLine();
                if (playerDealsAgain == "y")
                {
                    playerCards.Add (DealCard());
                } else
                {
                    gameOver = true;
                }
            }
            while (computerScore &amp;lt; 17)
            {
                computerCards.Add(DealCard());
                computerScore = CalculateScore(computerCards);
            }
            Console.WriteLine("Your final hand: " + string.Join(", ", playerCards) + ", your final score is: " + playerScore);
            Console.WriteLine("Computer's final hand: " + string.Join(", ", computerCards) + ", computer's score is: " + computerScore);
            Console.WriteLine(Compare(playerScore, computerScore));
        }
        while (gameOver)
        {
            Console.WriteLine("Do you want to play a game of Blackjack? Type 'y' for yes or 'n' for no? ");
            string response = Console.ReadLine();
            if (response == "n")
            {
                break;
            }
            Console.Clear();
            PlayGame();
        }

    } 

}

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I will do day 12 of the 100 days next week. &lt;/p&gt;

</description>
      <category>opensource</category>
      <category>security</category>
      <category>tooling</category>
      <category>productivity</category>
    </item>
    <item>
      <title>100 Days of Code: Day 10</title>
      <dc:creator>Oluwatoyin Ariyo</dc:creator>
      <pubDate>Fri, 27 Jan 2023 23:13:20 +0000</pubDate>
      <link>https://forem.com/toyinariyo/100-days-of-code-day-10-2ahp</link>
      <guid>https://forem.com/toyinariyo/100-days-of-code-day-10-2ahp</guid>
      <description>&lt;p&gt;Day 10 of Angela Yu's Python bootcamp was about functions with outputs (using the return statement to exit a function and to return a value). &lt;/p&gt;

&lt;p&gt;The main goal of today's project was to build a calculator that lets the user calculate two numbers by adding, subtracting, multiplying or dividing and then asking them if they want to continue calculating or start a new calculation. Here is the Python code:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import os
from art import logo


def cls():  # Cross-platform clear screen
    os.system('cls' if os.name == 'nt' else 'clear')


# Add
def add(n1, n2):
    return n1 + n2


# Subtract
def subtract(n1, n2):
    return n1 - n2


# Multiply
def multiply(n1, n2):
    return n1 * n2


# Divide
def divide(n1, n2):
    return n1 / n2


def calculator():
    print(logo)


operations = {
    "+": add,
    "-": subtract,
    "*": multiply,
    "/": divide
}

first_number = float(input("What's the first number? "))
second_number = float(input("What's the second number? "))
for sign in operations:
    print(sign)
    should_continue = True

while should_continue:
    operation_sign = input("Pick an operation from the line above: ")
    calculation_function = operations[operation_sign]
    answer = calculation_function(first_number, second_number)
    print(f"{first_number} {operation_sign} {second_number} = {answer}")
    if input("Type 'y' to continue calculating with {answer} or type 'n' to start a new calculation: ") == "y":
        first_number = answer
    else:
        should_continue = False
        cls()
        calculator()

calculator()
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I will continue with Day 11 tomorrow.&lt;/p&gt;

</description>
      <category>welcome</category>
      <category>community</category>
      <category>devto</category>
    </item>
    <item>
      <title>100 Days of Code: Day 9</title>
      <dc:creator>Oluwatoyin Ariyo</dc:creator>
      <pubDate>Mon, 23 Jan 2023 22:31:50 +0000</pubDate>
      <link>https://forem.com/toyinariyo/100-days-of-code-day-9-6i4</link>
      <guid>https://forem.com/toyinariyo/100-days-of-code-day-9-6i4</guid>
      <description>&lt;p&gt;Day 9 of Angela Yu's Python bootcamp was about dictionaries and how they can used in lists and even inside another dictionary (nested dictionaries). This led to building a program where the user enters their name and how much money they are going to bid for an auction. The user can then either choose to allow more bidders or to be the only bidder, which would result in them winning the bid. Here is the Python code for that (done in Pycharm instead of Replit as that is where I feel more comfortable coding with Python):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import os
from art import logo

def cls():  # Cross-platform clear screen
    os.system('cls' if os.name == 'nt' else 'clear')

print(logo)
bids = {}  # Create an empty dictionary for the bids
bidding_finished = False  # Create a boolean for when the bidding has finished


def find_highest_bidder(bidding_record):  # Argument for the bids empty dictionary
    highest_bid = 0
    winner = ""
    for bidder in bidding_record:
        bid_amount = bidding_record[bidder]
        if bid_amount &amp;gt; highest_bid:
            highest_bid = bid_amount
            winner = bidder
    print(f"Going once! Going twice! Sold to {winner} with a bid of £{highest_bid}")


while not bidding_finished:
    name = input("What is your name?\n")
    price = int(input("How much are you bidding? £"))
    bids[name] = price
    continue_bidding = input("Are there any other bidders? Type 'yes' or 'no'.\n")
    if continue_bidding == "no":
        bidding_finished = True
        find_highest_bidder(bids)
    elif continue_bidding == "yes":
        cls()
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I of course also converted it to C#, which can be seen here:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Dictionary&amp;lt;string, int&amp;gt; bids = new Dictionary&amp;lt;string, int&amp;gt;(); // Create an empty dictionary for the bids
bool bidding_finished = false; // Create a boolean for when the bidding has finished

void find_highest_bidder(Dictionary&amp;lt;string, int&amp;gt; bidding_record) // Argument for the bids empty dictionary
{
    int highest_bid = 0;
    string winner = "";
    foreach (var bidder in bidding_record)
    {
        int bid_amount = bidder.Value;
        if (bid_amount &amp;gt; highest_bid)
        {
            highest_bid = bid_amount;
            winner = bidder.Key;
        }
    }
    Console.WriteLine("Going once! Going twice! Sold to {0} with a bid of £{1}", winner, highest_bid);
}

while (!bidding_finished)
{
    Console.WriteLine("What is your name?");
    string name = Console.ReadLine();
    Console.WriteLine("How much are you bidding? £");
    int price = int.Parse(Console.ReadLine());
    bids[name] = price;
    Console.WriteLine("Are there any other bidders? Type 'yes' or 'no'.");
    string continue_bidding = Console.ReadLine();
    if (continue_bidding == "no")
    {
        bidding_finished = true;
        find_highest_bidder(bids);
    }
    else if (continue_bidding == "yes")
    {
        Console.WriteLine("\n" + 20);
    }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I will continue with Day 10 in the middle of the week. &lt;/p&gt;

</description>
      <category>programming</category>
      <category>webcomponents</category>
      <category>webdev</category>
      <category>opensource</category>
    </item>
    <item>
      <title>100 Days of Code: Day 8</title>
      <dc:creator>Oluwatoyin Ariyo</dc:creator>
      <pubDate>Sat, 21 Jan 2023 20:58:38 +0000</pubDate>
      <link>https://forem.com/toyinariyo/100-days-of-code-day-8-3a6g</link>
      <guid>https://forem.com/toyinariyo/100-days-of-code-day-8-3a6g</guid>
      <description>&lt;p&gt;Day 8 of Angela Yu's Python bootcamp was about functions with inputs are used in Python and also what the difference is between parameters and arguments (parameters are the name of the data being passed in and arguments are the value of the data). &lt;/p&gt;

&lt;p&gt;Our goal of the day was to build a caesar cipher that asks the user to enter a message and the program shifts the letters by a number that the user inputs. Here is the Python code:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# TODO-1: Import and print the logo from art.py when the program starts.
from art import logo
alphabet = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u',
            'v', 'w', 'x', 'y', 'z']


def caesar(start_text, shift_amount, cipher_direction):
    end_text = ""
    if cipher_direction == "decode":
        shift_amount *= -1
    for letter in start_text:
        # TODO-3: What happens if the user enters a number/symbol/space? Can you fix the code to keep the number/symbol/space when the text is encoded/decoded?
        if letter in alphabet:
            position = alphabet.index(letter)
            # TODO-2: What if the user enters a shift that is greater than the number of letters in the alphabet?
            new_position = (position + shift_amount) % 26
            end_text += alphabet[new_position]
        else:
            end_text += letter
    print(f"The {cipher_direction}d text is {end_text}")


print(logo)
#TODO-4: Can you figure out a way to ask the user if they want to restart the cipher program?
should_end = False
while not should_end:
    direction = input("Type 'encode' to encrypt, type 'decode' to decrypt:\n")
    text = input("Type your message:\n").lower()
    shift = int(input("Type the shift number:\n"))
    caesar(start_text=text, shift_amount=shift, cipher_direction=direction)
    restart = input("Type 'yes' if you want to go again. Otherwise type 'no'.\n")
    if restart == "no":
        should_end = True
        print("Goodbye")
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I love doing these projects as I feel more confident in Python and programming. I also did the same project in C#. Here is the code for that:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;string[] alphabet = { "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z" };

void caesar(string start_text, int shift_amount, string cipher_direction)
{
    string end_text = "";
    if (cipher_direction == "decode")
    {
        shift_amount *= 1;
    }
    for (int i = 0; i &amp;lt; start_text.Length; i++)
    {
        char letter = start_text[i];
        if (alphabet.Contains(letter.ToString()))
        {
            int position = Array.IndexOf(alphabet, letter.ToString());
            int new_position = (position + shift_amount) % 26;
            end_text += alphabet[new_position];
        }
        else
        {
            end_text += letter;
        }
    }
    Console.WriteLine("The {0}d text is {1}", cipher_direction, end_text);
}

bool should_end = false;
while (!should_end)
{
    Console.WriteLine("Type 'encode' to encrypt, type 'decode' to decrypt");
    string direction = Console.ReadLine().ToLower();
    Console.WriteLine("Type your message: ");
    string text = Console.ReadLine().ToLower();
    Console.WriteLine("Type the shift number:");
    int shift = Convert.ToInt32(Console.ReadLine());
    caesar(start_text: text, shift_amount: shift, cipher_direction: direction);
    Console.WriteLine("Type 'yes' if you want to go again otherwise type 'no'.");
    string restart = Console.ReadLine().ToLower();
    if (restart == "no")
    {
        should_end= true;
        Console.WriteLine("Goodbye");
    }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It was a bit difficult to convert the Python code to C# mainly because the syntax of for loops in C# are more complex than Python's for loop syntax. There is also a lot more converting variables into different data types like converting letter to string. &lt;/p&gt;

&lt;p&gt;I will post about Day 9 next week. &lt;/p&gt;

</description>
      <category>100daysofcode</category>
      <category>python</category>
      <category>csharp</category>
    </item>
    <item>
      <title>100 Days of Code: Days 6 and 7</title>
      <dc:creator>Oluwatoyin Ariyo</dc:creator>
      <pubDate>Wed, 18 Jan 2023 18:18:50 +0000</pubDate>
      <link>https://forem.com/toyinariyo/100-days-of-code-days-6-and-7-223f</link>
      <guid>https://forem.com/toyinariyo/100-days-of-code-days-6-and-7-223f</guid>
      <description>&lt;h2&gt;
  
  
  Day 6
&lt;/h2&gt;

&lt;p&gt;Day 6 of Angela Yu's Python Pro bootcamp involved controlling a robot with Python functions and while loops. The goal of day 6's project was to help the robot escape a maze by using while loops and functions.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;def right_turn():
    turn_left()
    turn_left()
    turn_left()

while front_is_clear():
    move()
turn_left()

while not at_goal():
    if right_is_clear():
        right_turn()
        move()
    elif front_is_clear():
        move()
    else:
        turn_left()
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Day 7
&lt;/h2&gt;

&lt;p&gt;Day 7 of the bootcamp involved learning about while not loops and the not operator in if statements. The goal of this project was to build a hangman game that asks the player to enter letters before their lives run out. Players start out with 6 lives and if they get a letter wrong, it's decremented by 1 each time until it reaches zero and the game ends.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import random
import hangman_art
import hangman_words
#TODO-1: - Update the word list to use the 'word_list' from hangman_words.py
chosen_word = random.choice(hangman_words.word_list)
display = []
end_of_game = False
lives = 6
#TODO-3: - Import the logo from hangman_art.py and print it at the start of the game.
print(hangman_art.logo)
for letter in chosen_word:
    display += "_"
print(display)
while not end_of_game:
    guess = input("Guess a letter: ").lower()
    word_length = len(chosen_word)
    # Check guessed letter
    for position in range(word_length):
        letter = chosen_word[position]
        if letter == guess:
            display[position] = letter
    if guess not in chosen_word:
        lives -= 1
        print(f"Number of lives: {lives}")
        if lives == 0:
            end_of_game = True
            print("You lose!")
    # Join all the elements in the list and turn it into a String.
    print(f"{' '.join(display)}")
    if "_" not in display:
        end_of_game = True
        print("You win!")
    # TODO-2: - Import the stages from hangman_art.py
    print(hangman_art.stages[lives])
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Originally, the code students are given in this bootcamp involves all of the words contained in a list named word_list in hangman_words.py. However, I have modified the code by putting all of the words in a text file and have the program read all the words in the text file when the game starts.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;print("Loading wordlist from file...")
file_open = open("wordlist_file.txt", 'r')
word_list = [line for line in file_open]  # Used list comprehension instead of for loop to make code more Pythonic.
print(" ", len(word_list), " words found.")
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I love that Python has simple syntax for reading into a file, like open() and 'r'. &lt;em&gt;Edit: I have replaced the for loop with list comprehension as I have just discovered it is a way of writing a for loop in one line of code.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;In C#, the above code would be written as:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;int word_counter = 0;
Console.WriteLine("Loading wordlist from file...")
foreach (string line in System.IO.File.ReadLines("wordlist_file.txt"))
{
  word_counter++;
  Console.WriteLine(word_counter + " words found.");
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The difference between the two is that Python adds the words into an empty list while C# uses a counter to count each line that is read. I did not do the Hangman game in C# because there isn't a .NET equivalent of random.choice() that I know of. &lt;/p&gt;

&lt;p&gt;I will post about Day 8 by the end of this week. &lt;/p&gt;

</description>
      <category>100daysofcode</category>
      <category>python</category>
    </item>
    <item>
      <title>100 Days of Code Day 5: For Loops</title>
      <dc:creator>Oluwatoyin Ariyo</dc:creator>
      <pubDate>Fri, 13 Jan 2023 17:14:02 +0000</pubDate>
      <link>https://forem.com/toyinariyo/100-days-of-code-day-5-for-loops-1ccn</link>
      <guid>https://forem.com/toyinariyo/100-days-of-code-day-5-for-loops-1ccn</guid>
      <description>&lt;p&gt;Day 5 of Angela Yu's Python Pro bootcamp involved for loops which in Python, the syntax is:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;for [variable name] in [variable-name]:
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I did various interactive exercises involving calculating the average of high scores and calculating the sum of even numbers from 1 to 100 but the main project I built today was a password generator, which lets the user input how many numbers, letters and symbols they want in their password before generating a random password with the inputted letters, numbers and symbols.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import random
letters = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']
numbers = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
symbols = ['!', '#', '$', '%', '&amp;amp;', '(', ')', '*', '+']
print("Welcome to the PyPassword Generator!")
nr_letters = int(input("How many letters would you like in your password?\n"))
nr_symbols = int(input(f"How many symbols would you like?\n"))
nr_numbers = int(input(f"How many numbers would you like?\n"))
password_list = []
for char in range(1, nr_letters + 1):
    password_list.append(random.choice(letters))
for char in range(1, nr_symbols + 1):
    password_list += random.choice(symbols)
for char in range(1, nr_numbers + 1):
    password_list += random.choice(numbers)
random.shuffle(password_list)
password = ""
for char in password_list:
    password += char
print(f"Your password is: {password}")
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I have mentioned previously that what I love about Python is its simple syntax and how it has a lot of built-in functions like random.choice() and random.shuffle() that makes it simple to randomly generate characters. In C#, these functions are not built in and the programmer would have to create a class with multiple lines of code to randomly shuffle the list and then reference that class. After trying to code the equivalent of the above code in C#, it prints out a random list of numbers instead of numbers, letters and symbols.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;string[] letters = { "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"};
string[] numbers = { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9" };
string[] symbols = { "!", "#", "$", "%", "£", "&amp;amp;", "*", "+" };
Random random = new Random();
Console.WriteLine("Welcome to the C# Password Generator!");
Console.WriteLine("How many letters would you like in your password?");
int nr_letters = Convert.ToInt16(Console.ReadLine());
Console.WriteLine("How many symbols would you like in your password?");
int nr_symbols = Convert.ToInt16(Console.ReadLine());
Console.WriteLine("How many numbers would you like in your password?");
int nr_numbers = Convert.ToInt16(Console.ReadLine());
List&amp;lt;string&amp;gt; password_list = new List&amp;lt;string&amp;gt;();
int letterindex = random.Next(letters.Length);
int symbolindex = random.Next(symbols.Length);
int numberindex = random.Next(numbers.Length);
foreach (int passchar in Enumerable.Range(1, nr_letters + 1))
{
    password_list.Add(letterindex.ToString());
}
foreach (int passchar in Enumerable.Range(1, nr_symbols + 1))
{
    password_list.Add(symbolindex.ToString());
}
foreach (int passchar in Enumerable.Range(1, nr_numbers + 1))
{
    password_list.Add(numberindex.ToString());
}
var shuffled = password_list.OrderBy(_ =&amp;gt; random.Next()).ToList();
string password = "";
foreach (string passchar in password_list)
{
    password += passchar;
}
string passwordFormat = String.Format("Your password is " + password);
Console.WriteLine(passwordFormat);

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Since there is no visualizer for C# like Python has with Python Tutor and Thonny, I cannot see why it only prints out numbers instead of numbers, letters and symbols. I will continue with Day 6 next week. &lt;/p&gt;

</description>
      <category>softwareengineering</category>
      <category>career</category>
      <category>discuss</category>
      <category>productivity</category>
    </item>
    <item>
      <title>100 Days of Code Challenge: Day 4</title>
      <dc:creator>Oluwatoyin Ariyo</dc:creator>
      <pubDate>Tue, 10 Jan 2023 16:00:49 +0000</pubDate>
      <link>https://forem.com/toyinariyo/100-days-of-code-challenge-day-4-4383</link>
      <guid>https://forem.com/toyinariyo/100-days-of-code-challenge-day-4-4383</guid>
      <description>&lt;p&gt;For Day 4 of the 100 Days of Code challenge with Angela Yu's Python Pro bootcamp, I worked with the random module and was introduced to lists and indexes to create a rock paper scissors game that lets the user play against the computer (which takes a random number from 0 to 2) by inputting any number from 0 to 2 where 0 is rock, 1 is paper and 2 is scissors. &lt;/p&gt;

&lt;p&gt;Here is the Python code:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import random
rock = '''
    _______
---'   ____)
      (_____)
      (_____)
      (____)
---.__(___)
'''
paper = '''
    _______
---'   ____)____
          ______)
          _______)
         _______)
---.__________)
'''
scissors = '''
    _______
---'   ____)____
          ______)
       __________)
      (____)
---.__(___)
'''
rps_art = [rock, paper, scissors] #rock is 0 showing rock art, paper is 1 showing  and scissors is 2
player_choice = int(input("What do you choose? Type 0 for rock, 1 for paper and 2 for scissors \n"))
print(rps_art[player_choice]) #
computer_choice = random.randint(0, 2)
print("Computer chose: ")
print(rps_art[computer_choice])
if player_choice &amp;gt;= 3 or player_choice &amp;lt; 0:
    print("Invalid choice. You lose.")
elif player_choice == 0 and computer_choice == 2: #Player chooses rock and computer chooses scissors
    print("Rock beats scissors. You win!")
elif computer_choice &amp;gt; player_choice:
    print("You lose!")
elif computer_choice &amp;lt; player_choice:
    print("You win!")
elif computer_choice == player_choice:
    print("It's a draw!")
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I also did the exercise in C# and learnt about the Random class and how it is used. Here is the C# code:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;string rock = "Rock";
string paper = "Paper";
string scissors = "Scissors";
string[] rps_art = { rock, paper, scissors };
Console.WriteLine("What do you choose? Type 0 for rock, type 1 for paper or type 2 for scissors");
int player_choice = Convert.ToInt16(Console.ReadLine());
Console.WriteLine(rps_art[player_choice]);
Random random = new Random();
int computer_choice = random.Next(0, 2);
Console.WriteLine("Computer chose: ");
Console.WriteLine(rps_art[computer_choice]);
if (player_choice &amp;gt;= 3 || computer_choice &amp;lt; 0)
{
    Console.WriteLine("Invalid choice. You lose");
} else if (player_choice == 0 &amp;amp;&amp;amp; computer_choice == 2)
{
    Console.WriteLine("Rock beats scissors. You win!");
} else if (computer_choice &amp;gt; player_choice)
{
    Console.WriteLine("You lose!");
} else if (computer_choice &amp;lt; player_choice)
{
    Console.WriteLine("You win!");
} else if (computer_choice == player_choice)
{
    Console.WriteLine("It's a draw");
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I really enjoyed doing this project and learning about how modules work in Python. Tomorrow, I will do day 5 of the project where I will learn about for loops and develop a project around it.&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>browser</category>
    </item>
    <item>
      <title>100 Days of Code Challenge: Day 3</title>
      <dc:creator>Oluwatoyin Ariyo</dc:creator>
      <pubDate>Fri, 06 Jan 2023 18:16:21 +0000</pubDate>
      <link>https://forem.com/toyinariyo/100-days-of-code-challenge-day-3-42e6</link>
      <guid>https://forem.com/toyinariyo/100-days-of-code-challenge-day-3-42e6</guid>
      <description>&lt;p&gt;For Day 3 of the Python Pro Bootcamp, I learnt about conditional logic ( if-else, elif, nested if statements), logical operators (and, or) and string concatenation. I did a lot of exercises for day 3 (yesterday and today) but the projects I focused on the most are the love calculator project and the treasure island adventure game.&lt;/p&gt;

&lt;p&gt;Love Calculator Python code:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;print("Welcome to the Love Calculator!")
name1 = input("What is your name? \n")
name2 = input("What is their name? \n")
combined_names = name1 + name2
lowercase = combined_names.lower()
t = lowercase.count("t")
r = lowercase.count("r")
u = lowercase.count("u")
e = lowercase.count("e")
true = t + r + u + e
l = lowercase.count("l")
o = lowercase.count("o")
v = lowercase.count("v")
e = lowercase.count("e")
love = l + o + v + e
love_score = int(str(true) + str(love))
print(love_score)
if love_score &amp;lt; 10 or love_score &amp;gt; 90:
    print(f"Your love score is {love_score}, you go together like coke and mentos.")
elif love_score &amp;gt;= 40 and love_score &amp;lt;= 50:
    print(f"Your love score is {love_score}, you are alright together.")
else:
    print(f"Your love score is {love_score}.")
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I tried recreating the Love Calculator in C# but trying to return a number of occurrences of a substring in a string is more complex in C# as it involves using multiple parameters and the syntax isn't as simple as Python's e.g. stringvariable.count("a"). &lt;/p&gt;

&lt;p&gt;Treasure Island Python code:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;print('''
*******************************************************************************
          |                   |                  |                     |
 _________|________________.=""_;=.______________|_____________________|_______
|                   |  ,-"_,=""     `"=.|                  |
|___________________|__"=._o`"-._        `"=.______________|___________________
          |                `"=._o`"=._      _`"=._                     |
 _________|_____________________:=._o "=._."_.-="'"=.__________________|_______
|                   |    __.--" , ; `"=._o." ,-"""-._ ".   |
|___________________|_._"  ,. .` ` `` ,  `"-._"-._   ". '__|___________________
          |           |o`"=._` , "` `; .". ,  "-._"-._; ;              |
 _________|___________| ;`-.o`"=._; ." ` '`."\` . "-._ /_______________|_______
|                   | |o;    `"-.o`"=._``  '` " ,__.--o;   |
|___________________|_| ;     (#) `-.o `"=.`_.--"_o.-; ;___|___________________
____/______/______/___|o;._    "      `".o|o_.--"    ;o;____/______/______/____
/______/______/______/_"=._o--._        ; | ;        ; ;/______/______/______/_
____/______/______/______/__"=._o--._   ;o|o;     _._;o;____/______/______/____
/______/______/______/______/____"=._o._; | ;_.--"o.--"_/______/______/______/_
____/______/______/______/______/_____"=.o|o_.--""___/______/______/______/____
/______/______/______/______/______/______/______/______/______/______/_____ /
*******************************************************************************
''')
print("Welcome to Treasure Island.")
print("Your mission is to find the treasure.")
firstchoice = input("You are at a crossroad. Where do you want to go? Type 'left' or 'right'.\n").lower()
if firstchoice == "left":
    secondchoice = input("You have come to a lake. There is an island in the middle of the lake. Type 'wait' to wait "
                         "for a boat or type 'swim' to swim across. \n").lower()
    if secondchoice == "wait":
        thirdchoice = input("You arrive at the island unharmed. There is a house with three doors. One red, one yellow"
                            "and one blue. Which colour do you choose? \n").lower()
        if thirdchoice == "red":
            print("This room is full of fire. Game over!")
        elif thirdchoice == "yellow":
            print("You found the treasure. You win!")
        elif thirdchoice == "blue":
            print("You enter a room full of piranhas. Game over!")
        else:
            print("This door doesn't exist. Game over!")
    else:
        print("You drowned. Game over!")
else:
    print("You fall into a sinkhole. Game over!")
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The above code was a simple adventure game that gives the users 3 choices before determining if they win the game or if they lose, depending on their choice. &lt;/p&gt;

&lt;p&gt;Treasure Island C# code:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Console.WriteLine("Welcome to Treasure Island!");
Console.WriteLine("Your mission is to find the treasure.");
string firstchoice;
string secondchoice = "";
string thirdchoice = "";
Console.WriteLine("You are at a crossroad. Do you go left or right? Type 'left' or 'right'.");
firstchoice = Console.ReadLine().ToLower();
if (firstchoice == "left")
{
    Console.WriteLine("You have come to a lake. There is an island in the middle of the lake. " +
        "Type 'wait' to wait for a boat or 'swim' to swim for it.");
    secondchoice = Console.ReadLine().ToLower();
} else
{
    Console.WriteLine("You fall into a sinkhole. Game over!");
}
if (secondchoice == "wait")
{
    Console.WriteLine("You arrive at the island unharmed. There is a house with 3 doors: one red," +
        "one yellow and one blue. Which colour door do you enter?");
        thirdchoice = Console.ReadLine().ToLower();
} else
{
    Console.WriteLine("You drowned. Game over!");
}
if (thirdchoice == "red")
{
    Console.WriteLine("This room is full of fire. Game over!");

} else if (thirdchoice == "yellow")
{
    Console.WriteLine("You found the treasure. You win!");
} else if (thirdchoice == "blue")
{
    Console.WriteLine("You enter a room full of piranhas. Game over!");
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I managed to convert the Python code to C# as it mostly involves if statements and the syntax for that is similar in both programming languages, the main difference being C# uses curly braces while Python uses a colon. &lt;/p&gt;

&lt;p&gt;I am going to continue with Day 4 next week.&lt;/p&gt;

</description>
      <category>100daysofcode</category>
      <category>python</category>
      <category>csharp</category>
    </item>
    <item>
      <title>100 Days of Code Challenge: Day 2</title>
      <dc:creator>Oluwatoyin Ariyo</dc:creator>
      <pubDate>Wed, 04 Jan 2023 19:35:07 +0000</pubDate>
      <link>https://forem.com/toyinariyo/100-days-of-code-challenge-day-2-4p3a</link>
      <guid>https://forem.com/toyinariyo/100-days-of-code-challenge-day-2-4p3a</guid>
      <description>&lt;p&gt;It is Day 2 of me doing the 100 Days of Code challenge from Angela Yu's &lt;a href="https://www.udemy.com/course/100-days-of-code/" rel="noopener noreferrer"&gt;100 Days of Code: The Complete Python Pro Bootcamp&lt;/a&gt; where I learnt about mathematical operations and data type manipulation like string formatters. &lt;/p&gt;

&lt;p&gt;Compared to &lt;a href="https://dev.to/toyinariyo/new-years-resolutions-for-a-neurodivergent-junior-developer-4km3"&gt;day 1&lt;/a&gt;, it was definitely a bit more difficult as it involved a lot of mathematics and I am not good at doing that without a calculator. Using &lt;a href="https://pythontutor.com/" rel="noopener noreferrer"&gt;Python Tutor&lt;/a&gt; definitely helped me build and understand the project more as it allowed me to break down the program line by line so I can see how each variable was calculated. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flb49iimaw8rv80w0gvck.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flb49iimaw8rv80w0gvck.png" alt="Screenshot of code shown line by line in Python Tutor" width="800" height="431"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For the C# equivalent, it was a lot harder to program than Day 1 because Python and C# are so different. The C# program manages to run but it does not seem to show the correct result: for the above input, it would say the final amount is 14.00 instead of 15.40. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5ldehtdxpam83731t6sq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5ldehtdxpam83731t6sq.png" alt="Image description" width="718" height="301"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;using System;

class Program {
  public static void Main (string[] args) {
    Console.WriteLine ("Here is Toyin's tip calculator!");
    Console.WriteLine("What was the total bill?");
    decimal bill = decimal.Parse(Console.ReadLine());
    Console.WriteLine("Was the tip 10, 12 or 15?");
    int tip = int.Parse(Console.ReadLine());
    Console.WriteLine("How many people are splitting the bill?");
    int people_split = int.Parse(Console.ReadLine());
    int tip_percentage = tip / 100;
    decimal total_tip = bill * tip_percentage;
    decimal total_bill = bill + total_tip;
    decimal bill_per_person = total_bill / people_split;
    decimal final_amount = Math.Round(bill_per_person, 2);
    Console.WriteLine("Each person should pay: " + "$" + final_amount.ToString("0.00")); //Prints out wrong answer: 14 instead of 15.4 for total bill of 70, tip of 10 and 5 people splitting bill
    }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I'm not sure where the issue was in converting the Python code and why it is displaying a different result. Enjoyment wise, I am definitely liking how simple the syntax is with Python, I really wish I started using this programming language a lot earlier. &lt;/p&gt;

&lt;p&gt;I plan on posting about Day 3 of the Code Challenge tomorrow. &lt;/p&gt;

</description>
      <category>watercooler</category>
    </item>
    <item>
      <title>New Year's Resolutions for a neurodivergent junior developer</title>
      <dc:creator>Oluwatoyin Ariyo</dc:creator>
      <pubDate>Tue, 03 Jan 2023 14:24:36 +0000</pubDate>
      <link>https://forem.com/toyinariyo/new-years-resolutions-for-a-neurodivergent-junior-developer-4km3</link>
      <guid>https://forem.com/toyinariyo/new-years-resolutions-for-a-neurodivergent-junior-developer-4km3</guid>
      <description>&lt;p&gt;When it comes to making New Year's resolutions, a lot of people try to stick to them but realise it is a very difficult process. This is even more different for neurodivergent people, who often deal with &lt;a href="https://www.additudemag.com/what-is-executive-function-disorder/" rel="noopener noreferrer"&gt;executive dysfunction&lt;/a&gt;, which makes being productive very difficult. I have tried everything, from Trello boards to journaling and while those methods are effective for a week, the executive dysfunction eventually wins out and I become unproductive again. However, this year, I plan to change that by doing the 100 Days of Code challenge.&lt;/p&gt;

&lt;p&gt;Last month, I purchased Angela Yu's &lt;a href="https://www.udemy.com/course/100-days-of-code/" rel="noopener noreferrer"&gt;100 Days of Code: The Complete Python Pro Bootcamp&lt;/a&gt; from Udemy to learn Python as it is a very versatile programming language but I could only watch a few videos a day before stopping instead of doing all of the videos of one section in a day. &lt;/p&gt;

&lt;p&gt;I decided to change this by making one of my resolutions be to have more than 300 contributions in my &lt;a href="https://github.com/toyinariyo" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; for 2023 as I would always have under 100 contributions in my GitHub for the previous years (2020, 2021, 2022). Seeing the little green contribution squares helps gamify the process of coding in my mind and it makes me feel more productive. I uploaded Day 1's code to my GitHub on Sunday to start my resolution.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;print("Hello user. Welcome to Toyin's band name generator")
city = input("What city did you grow up?\n")
pet = input("What is the name of your pet?\n")
print("Here is your band name: " + city + " " + pet)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I also wanted to further my C# skills so I have decided to convert the above Python code to C# so that I can gain a better understanding in both programming languages.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;using System;

class Program {
  public static void Main (string[] args) {
    string city;
    string pet;
    Console.WriteLine ("Hello user. Welcome to Toyin's band name generator");
    Console.WriteLine("What city did you grow up in?");
    city = Console.ReadLine();
    Console.WriteLine("What is the name of your pet?");
    pet = Console.ReadLine();
    Console.WriteLine("Here is your band name: " + city + " " + pet);
  }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I will post Day 2's code tomorrow for both programming languages tomorrow. Doing this challenge and documenting them with these daily blogs will improve my skills as a developer and will make me more confident in my programming. &lt;/p&gt;

</description>
      <category>emptystring</category>
    </item>
  </channel>
</rss>
