<?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: Torine6</title>
    <description>The latest articles on Forem by Torine6 (@torine6).</description>
    <link>https://forem.com/torine6</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%2F810927%2F4943b4ff-fbea-4e72-b7fa-d39b6bb6d9ed.jpeg</url>
      <title>Forem: Torine6</title>
      <link>https://forem.com/torine6</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/torine6"/>
    <language>en</language>
    <item>
      <title>Data Engineering 101:Introduction to Data Engineering</title>
      <dc:creator>Torine6</dc:creator>
      <pubDate>Sun, 21 Aug 2022 18:48:06 +0000</pubDate>
      <link>https://forem.com/torine6/data-engineering-101introduction-to-data-engineering-2d90</link>
      <guid>https://forem.com/torine6/data-engineering-101introduction-to-data-engineering-2d90</guid>
      <description>&lt;p&gt;Data engineering is one of the fastest rising Data Science job roles. It is the foundation for big data. Data engineers are also known as information architects.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Information engineering (IE), also known as data engineering, information technology engineering (ITE) or information engineering methodology (IEM), refers to the building of systems to enable the collection and usage of data. This data is usually used to enable subsequent analysis and data science; which often involves machine learning.Making the data usable usually involves substantial compute and storage, as well as data processing and cleaning.-Wikipedia&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;This article introduces the reader to basics they should know in order to get started with data engineering. It is a continuation of my previous article &lt;a href="https://dev.to/torine6/the-ultimate-guide-to-getting-started-in-data-science-539a"&gt;getting started in data science&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;Objectives&lt;br&gt;
What is data engineering?&lt;br&gt;
Data engineering and big data.&lt;br&gt;
Data Engineers VS Data Scientists.&lt;br&gt;
Data pipelines.&lt;br&gt;
How to move and process data.&lt;br&gt;
&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;What is data engineering?&lt;/strong&gt;&lt;br&gt;
Data engineering refers to the building of systems to enable the collection and usage of data. &lt;br&gt;
A data engineer's primary job is to prepare data for analytical or operations. They are responsible for building data pipelines to bring together information from different sources.&lt;br&gt;
In the Data Science workflow, Data Engineers are responsible for data preparation, collection and storage.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--7fH1A1vL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/x3olkyn46p06r7httncf.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--7fH1A1vL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/x3olkyn46p06r7httncf.jpeg" alt="The Data Science Workflow" width="800" height="685"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;u&gt;Responsibilities of a data engineer&lt;/u&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Ingesting data from different sources.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Optimizing databases for analysis.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Removing corrupted data.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;They develop, construct, test and maintain data architectures.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;BIG DATA&lt;/strong&gt;&lt;br&gt;
This is large volume of data that is difficult to process using traditional management methods.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;u&gt;The five V's of big data&lt;/u&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Volume- The amount of data. How much?&lt;br&gt;
Variety- The types of data. What kind?&lt;br&gt;
Velocity- The rate at which data is received. How frequent?&lt;br&gt;
Veracity- How truthful your data is. How accurate?&lt;br&gt;
Value- How useful?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Data Engineers VS Data Scientists&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Data Engineers collect and store data, Data Scientists exploit the data.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Data Engineers set up databases, Data Scientists access the databases.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Data Engineers build data pipelines, Data Scientists use pipeline outputs.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Data Engineers have strong software skills, Data Scientists have strong analytical skills.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Data Pipelines&lt;/strong&gt;&lt;br&gt;
A data pipeline is a series of data processing steps: Ingest -&amp;gt;Process -&amp;gt;Store.&lt;br&gt;
Data pipelines automate data flow from one station to the next so that Data Scientists can use up-to-date, accurate and relevant data. &lt;br&gt;
They ensure efficient flow of data.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;u&gt;ETL and Data Pipelines&lt;/u&gt;&lt;/em&gt;&lt;br&gt;
ETL is a popular framework for designing data pipelines.&lt;br&gt;
E-Extract data&lt;br&gt;
T-Transform extracted data.&lt;br&gt;
L-Load transformed data to another database.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Processing Data&lt;/strong&gt;&lt;br&gt;
Processing data refers to converting raw data into meaningful information.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;u&gt;Importance of procesing data&lt;/u&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;a. It helps to convert data from one type to another.&lt;br&gt;
b. It helps to remove unwanted data.&lt;br&gt;
c. It helps to organise data.&lt;br&gt;
d. It helps to optimize memory, process and network costs.&lt;br&gt;
e. It helps to fit data into a structure.&lt;br&gt;
f. It increases productivity.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;u&gt;How data engineers process data&lt;/u&gt;&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Data manipulation, cleaning and tidying.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Storing data in a sanely structured database.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Creating views on top of the database tables.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Optimizing performance of the database.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;&lt;u&gt;Links to other resources&lt;/u&gt;&lt;/em&gt;&lt;br&gt;
&lt;a href="https://www.coursera.org/articles/what-does-a-data-engineer-do-and-how-do-i-become-one"&gt;What a Data Engineer does Coursera article&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.datacamp.com/blog/the-path-to-becoming-a-data-engineer"&gt;Becoming a data engineer article by datacamp&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.youtube.com/watch?v=EzYVqg0zzlY"&gt;What do Data Engineers actually do?&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.youtube.com/watch?v=SpaFPPByOhM"&gt;Data Engineering Road Map&lt;/a&gt;&lt;/p&gt;

</description>
      <category>datascience</category>
      <category>sql</category>
      <category>webdev</category>
    </item>
    <item>
      <title>The Ultimate Guide to Getting Started in Data Science</title>
      <dc:creator>Torine6</dc:creator>
      <pubDate>Sun, 03 Apr 2022 20:05:00 +0000</pubDate>
      <link>https://forem.com/torine6/the-ultimate-guide-to-getting-started-in-data-science-539a</link>
      <guid>https://forem.com/torine6/the-ultimate-guide-to-getting-started-in-data-science-539a</guid>
      <description>&lt;p&gt;This article is a beginner's guide to getting started with Data Science. There is no precise or fixed way of learning Data Science. A person only needs to choose a specific role and learn the tools required for it, do a lot of practice and projects in order to become job ready.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is Data Science?&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Data science is an interdisciplinary field that uses scientific methods, processes, algorithms and systems to extract knowledge and insights from noisy, structured and unstructured data, and apply knowledge and actionable insights from data across a broad range of application domains. Data science is related to data mining, machine learning and big data.&lt;/em&gt; - Wikipedia&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Data Science combines scientific methods, mathematics and statistics, programming, analytics and Artificial Intelligence(AI) to extract knowledge and insights with the goal of discovering hidden patterns from raw data.&lt;br&gt;
Data Science is used to organize and analyse large amounts of data.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flv5yswo8akx4sl3zr4wg.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flv5yswo8akx4sl3zr4wg.jpg" alt="Data Science"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Need for Data Science&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;To handle and analyze extremely large datasets/data flow.&lt;/li&gt;
&lt;li&gt;Faster and better decision making.&lt;/li&gt;
&lt;li&gt;Build intelligence and ability in machines.&lt;/li&gt;
&lt;li&gt;Gain business insights.&lt;/li&gt;
&lt;li&gt;Reduce production costs.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Roles of a Data Scientist&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Organise and analyse large amounts of data.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Statistical inference.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Designing and creating processes for complex and large-scale datasets.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Building predictive models using Machine Learning algorithms.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Monitoring how Machine Learning models perform.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Data Science skill set&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;i) Statistics&lt;/p&gt;

&lt;p&gt;ii) Programming languages including R, Python, Java, Matlab, SQL, SAS&lt;/p&gt;

&lt;p&gt;iii) Data extraction and processing&lt;/p&gt;

&lt;p&gt;iv) Machine learning algorithms&lt;/p&gt;

&lt;p&gt;v) Big data processing frameworks&lt;/p&gt;

&lt;p&gt;vi) Data visualisation &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Data Science life cycle&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Understand and define objectives of the problem that needs to be tackled.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Data acquisition. They should be able to gather and scrape data from multiple sources such as web servers, databases, APIs.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Data preparation - data cleaning and transformation. Data cleaning is the longest process because it is complex. It is the process of fixing or removing incompetent data within a dataset.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Exploratory data analysis. Defines and refines the selection of feature variables that will be used in the model development. This is the most important step.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Data modelling. This is the core activity of a Data Science project. We apply type verse machine learning techniques to the data to identify the model that best suites the problem. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Visualisation and communication. It involves explaining the problem solution in simple and effective terms using tools like Power BI and tableau.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Deploying and maintaining the model.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Data Science job roles and tools&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;A) Data Scientist&lt;/em&gt;&lt;br&gt;
. Is well versed in statistical methods.&lt;br&gt;
. Runs experiments and analyses for insights.&lt;br&gt;
. Has knowlege of traditional machine learning.&lt;br&gt;
. Focuses on data preparation, exploration and visualisation, data experimentation and prediction.&lt;br&gt;
&lt;em&gt;Tools&lt;/em&gt; &lt;br&gt;
. SQL to retrieve and aggregate data&lt;br&gt;
. Python and R Data Science libraries like Pandas(Python), tidyverse(R)&lt;/p&gt;

&lt;p&gt;&lt;em&gt;B)Data Analyst&lt;/em&gt;&lt;br&gt;
. Performs simple analyses that describe data.&lt;br&gt;
. Creates reports and dashboards to summarize data.&lt;br&gt;
. Cleans data for analysis.&lt;br&gt;
. Focuses on data preparation, exploration and visualisation.&lt;br&gt;
&lt;em&gt;Tools&lt;/em&gt;&lt;br&gt;
. SQL to retrieve and aggregate data&lt;br&gt;
. Spreadsheets (Excel/ Google sheets) to perform simple analysis&lt;br&gt;
. Business Intelligence tools(Tableau, Power BI, Looker) to create dashboards and visualisations.&lt;br&gt;
. May have Python/ R to clean  and analyze data.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;C)Data Engineer&lt;/em&gt;&lt;br&gt;
. Are known as information architects.&lt;br&gt;
. Build data pipelines and storage solutions.&lt;br&gt;
. Maintain data access.&lt;br&gt;
. Focuses on data acquisition/ collection and storage.&lt;br&gt;
&lt;em&gt;Tools&lt;/em&gt;&lt;br&gt;
. SQL to store and organize data&lt;br&gt;
. Java, Scala, Python to process data&lt;br&gt;
. Shell command line to automate and run tasks&lt;br&gt;
. Cloud computing- AWS, Azure, Google Cloud Platform.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;D)Machine Learning Scientist&lt;/em&gt;&lt;br&gt;
. Performs predictions and extrapolations.&lt;br&gt;
. Carries out classification.&lt;br&gt;
. Deep learning- Image processing, Natural Language processing.&lt;br&gt;
. Focuses on data preparation, exploration and visualisation with a strong focus on prediction.&lt;br&gt;
&lt;em&gt;Tools&lt;/em&gt;&lt;br&gt;
. Python/ R Machine Learning libraries such as TensorFlow, Spark.&lt;/p&gt;

&lt;p&gt;Other DS roles include Database Administrator, Statistician, Business Analyst, Data and Analytics Manager,Data Architect&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Applications of Data Science&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Traditional Machine Learning. Here computers learn from data using algorithms to perform a task without being explicitly programmed. We require a well defined question, a set of example data and a new set of data to train our algorithm on.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Internet of Things(IoT). This refers to gadgets that are not standard computers but have the ability to translate data. Examples include smart watches, internet-connected home security systems, electronic toll collection systems.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Deep learning. Here many neurons work together to draw complex conclusions. It requires much more training data than traditional machine learning.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7la828lskdm29x13w3se.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7la828lskdm29x13w3se.jpg" alt="DS"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;A step-by-step approach&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Learn the basics of programming. Start by learning the basics of Python or R programming. Make use of the free resources available online.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Have a basic understanding of Statistics. You should learn enough programming and statistics in order to start working on projects. There is no need for you to cram everything, always use Google when stuck.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Work on beginner projects. This helps you learn how to solve problems and overcome challenges.  &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Start working on advanced projects to stretch out your skillset.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Share your projects. Create a public repository with your work and share it on a platform of your choice, on GitHub, GitLab, or GitBucket.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Hold yourself accountable. How can you do this? By writing down what you have learnt in simple terms and by sharing your knowledge with others. You can share your work on a blogging site of your choice.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Resources&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://www.youtube.com/watch?v=LHBE6Q9XlzI&amp;amp;t=42243s" rel="noopener noreferrer"&gt;Python for Data Science Course by freecodecamp&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.youtube.com/watch?v=-6RqxhNO2yY&amp;amp;t=8177s" rel="noopener noreferrer"&gt;Python for Data Science by edureka&lt;/a&gt;&lt;br&gt;
&lt;a href="https://app.datacamp.com/learn/skill-tracks/data-literacy-fundamentals" rel="noopener noreferrer"&gt;Data Camp Data Literacy Course&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Finding the right data takes both time and effort. Try to use at least two hours daily to study. Consistency is key. If you are ready to start learning Data Science, start now! The world of Data Science needs you. I hope this inspires you in your journey.&lt;/p&gt;

</description>
      <category>programming</category>
      <category>beginners</category>
      <category>datascience</category>
    </item>
    <item>
      <title>Inspiring quotes for programmers</title>
      <dc:creator>Torine6</dc:creator>
      <pubDate>Sun, 27 Mar 2022 19:40:48 +0000</pubDate>
      <link>https://forem.com/torine6/inspiring-quotes-for-programmers-1lg0</link>
      <guid>https://forem.com/torine6/inspiring-quotes-for-programmers-1lg0</guid>
      <description>&lt;p&gt;Today I'd like to share some motivation for a developer out there who feels like giving up. Starting out in programming can be difficult, and on some days you might feel like you can't go on. Here are some motivational quotes by other developers to help you along your journey: &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;In order to be irreplaceable, one must always be  different.&lt;/em&gt; &amp;gt;Oscar Wilde&lt;/p&gt;
&lt;/blockquote&gt;

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

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Don't worry if it doesn't work right. If everything did, you'd be out of a job.&lt;/em&gt; ~ anonymous &lt;/p&gt;
&lt;/blockquote&gt;

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

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;A good programmer is someone who looks both ways before crossing a one-way street.&lt;/em&gt; ~ Doug Linder&lt;/p&gt;
&lt;/blockquote&gt;

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

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Every programmer is an author&lt;/em&gt; ~ Sercan Leylek&lt;/p&gt;
&lt;/blockquote&gt;

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

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;A code is like love, it was created with clear intentions at the beginning, but it can get complicated&lt;/em&gt; ~ Gerry Geek&lt;/p&gt;
&lt;/blockquote&gt;

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

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live&lt;/em&gt; ~ Rick Osborne&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--M5CoYsy1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uo2p4qwcmfy99qgymito.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--M5CoYsy1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uo2p4qwcmfy99qgymito.jpg" alt="Quote" width="720" height="653"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I hope this inspires you as you begin your week. Happy coding!&lt;/p&gt;

</description>
      <category>programming</category>
      <category>beginners</category>
      <category>100daysofcode</category>
      <category>inspiration</category>
    </item>
    <item>
      <title>Web development</title>
      <dc:creator>Torine6</dc:creator>
      <pubDate>Sun, 20 Mar 2022 12:46:11 +0000</pubDate>
      <link>https://forem.com/torine6/web-development-1g3p</link>
      <guid>https://forem.com/torine6/web-development-1g3p</guid>
      <description>&lt;p&gt;&lt;strong&gt;What is web development?&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;Web development&lt;/em&gt; is the task of developing websites that can be hosted by the internet. &lt;br&gt;
Web development varies from a simple page to complex websites.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why Python for web development&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Python is flexible and easy to use.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Python is very stable hence it helps to dynamically build web applications.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Python provides quick processing.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Python is an all in one tool.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Different types of web development&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Lw0SOo4P--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/07o95ok3hbn1mufe4ril.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Lw0SOo4P--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/07o95ok3hbn1mufe4ril.jpg" alt="Types of web development" width="720" height="439"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1.Front-end web development&lt;/strong&gt;&lt;br&gt;
The front-end is the part that is loaded inside a web browser on a client machine.&lt;br&gt;
The front-end is the part that the user sees and interacts with.&lt;br&gt;
Front-end web development is responsible for how a website looks or feels.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2.Back-end web development&lt;/strong&gt;&lt;br&gt;
The back-end is the part that runs on a web server.&lt;br&gt;
The back-end is responsible for data processing, validating business rules, etc&lt;br&gt;
Back-end web development is responsible for building and maintaining the code that runs a website.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3.Full-stack web development&lt;/strong&gt;&lt;br&gt;
Full-stack web development is development of both the front-end(client side) and back-end(server side) of a web application. &lt;br&gt;
Full-stack developers are experts that cover both front-end and back-end responsibilities. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Basics for building web applications&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;i) Address/URL&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;URL&lt;/em&gt; refers to Uniform Resource Locator.&lt;br&gt;
It is a way to relocate a resource on the internet. &lt;br&gt;
A resource can be a web page, image, video or a pdf&lt;br&gt;
&lt;strong&gt;ii) HTTP&lt;/strong&gt;&lt;br&gt;
HTTP refers to Hypertext Transfer Protocol.&lt;br&gt;
Data exchange between back-end and front-end is determined by protocol called HTTP.&lt;br&gt;
HTTP defines how clients and servers can communicate. &lt;br&gt;
&lt;strong&gt;iii) HTML&lt;/strong&gt;&lt;br&gt;
HTML refers to Hypertext Markup Language.&lt;br&gt;
HTML is a simple language for presenting web pages and their content.&lt;br&gt;
Web pages are built using HTML.&lt;br&gt;
When using HTML, the server responds to the client by generating the requested page and returns it to the client. &lt;br&gt;
The other option is to return the data needed by the client and have the client generate the page. This is considered the industry best practice. &lt;br&gt;
&lt;strong&gt;iv) API&lt;/strong&gt;&lt;br&gt;
API stands for Application programming Interface.&lt;br&gt;
API is a software intermediary that allows two applications to interact with each other. &lt;br&gt;
Modern APIs adhere to HTTP standards that are developer-friendly, easily accessible and understood broadly.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Libraries Python provides for web development&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;CherryPy&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Django&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;web2py&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Pyramid&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;TurboGears&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Flask&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Recommended library&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--vgeINn8O--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5ju9inplrhb7zjr92j7w.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vgeINn8O--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5ju9inplrhb7zjr92j7w.jpg" alt="Django" width="373" height="226"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For a beginner, I would recommend using Django.&lt;br&gt;
Django is a high-level Python framework used for building web applications.&lt;br&gt;
Django is used for back-end web development.&lt;br&gt;
&lt;em&gt;&lt;u&gt;Why Django?&lt;/u&gt;&lt;/em&gt;&lt;br&gt;
Django is best for web development for beginners because: &lt;br&gt;
i) Django is written purely in Python.&lt;br&gt;
ii) Django is fast - you can create websites within few hours.&lt;br&gt;
iii) Django is fully loaded with all tools to create websites. &lt;br&gt;
iv) Django is very secure.&lt;/p&gt;

&lt;p&gt;&lt;u&gt;Django features&lt;/u&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Admin site-an automatically generated user interface fo Django models.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;ORM- Object-relational mapper-&amp;gt; allows developers to interact with the Django database.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Authentication-&amp;gt;verifies the user and determines what the verified user can do. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Caching-&amp;gt;lets the server process a request and store it in our cache.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;u&gt;Examples of applications that rely on Django&lt;/u&gt;&lt;br&gt;
YouTube&lt;br&gt;
Quora&lt;br&gt;
Google&lt;br&gt;
Instagram&lt;br&gt;
Bitly&lt;br&gt;
Dropbox&lt;br&gt;
Spotify&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Resources&lt;/strong&gt;&lt;br&gt;
-&lt;a href="https://realpython.com/tutorials/web-dev/#:~:text=One%20area%20where%20Python%20shines,the%20Washington%20Post%20and%20Yelp."&gt;Web development in Python&lt;/a&gt;&lt;br&gt;
-&lt;a href="https://www.youtube.com/watch?v=3JluqTojuME"&gt;YouTube video&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;If there's one thing you learn by working on a lot of different websites, it's that almost any design idea- no matter how appalingly bad- can be made usable in the right circumstances, with enough effort ~ Steve Krug&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>webdev</category>
      <category>python</category>
      <category>tutorial</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Introduction to Big O notation</title>
      <dc:creator>Torine6</dc:creator>
      <pubDate>Sun, 13 Mar 2022 19:50:13 +0000</pubDate>
      <link>https://forem.com/torine6/introduction-to-big-o-notation-5gad</link>
      <guid>https://forem.com/torine6/introduction-to-big-o-notation-5gad</guid>
      <description>&lt;p&gt;This is a short continuation of &lt;a href="https://dev.to/torine6/introduction-to-data-structures-and-algorithms-with-python-37pb"&gt;my article on Data Structures and Algorithms in Python&lt;/a&gt; where I covered basic Data structures that a beginner in Python needs to know.&lt;br&gt;
Here I will cover the Big O notation as an introduction to algorithms in Python. I will try to explain it in simple terms.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Big O notation is a mathematical notation that describes the limiting behavior of a function when the argument tends towards a particular value or infinity ~ Wikipedia&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Big O notation is used to describe the performance of an algorithm.&lt;br&gt;
It is used to classify algorithms according to how their run time or space requirements grow as the input size grows.&lt;br&gt;
It helps us determine whether an algorithm is scalable or not, that is, is it going to scale well as the input grows really large?&lt;br&gt;
Some operations can be more or less costly depending on the Data structure we use.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# example
given_list = [5, 1, 7, 2, 6, 3, 10, 4, 9]
def find_sum(given_list):
    total = 0
    for x in given_list:
        total += 1
    return total
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;&lt;u&gt;Examples of common growth rates/time complexities&lt;/u&gt;&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Runtime&lt;/strong&gt; is the time taken to execute a piece of code.&lt;br&gt;
&lt;strong&gt;Time complexity&lt;/strong&gt; is a way of showing how the runtime of a function increases as the size of input increases.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1.O(n)&lt;/strong&gt;&lt;br&gt;
Linear time complexity.&lt;br&gt;
n - size of the input&lt;br&gt;
In our example n is the number of elements in our list.&lt;br&gt;
Simple loops run in linear time or O(n)&lt;br&gt;
Here the cost of the algorithm increases linearly as the size of the input increases.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--W_zkDr2H--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/r6lbhuolasxidfxfws23.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--W_zkDr2H--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/r6lbhuolasxidfxfws23.jpg" alt="Linear time complexity" width="489" height="320"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The time(T) it takes to run a function can be expressed as a linear function:&lt;br&gt;
T = an + b&lt;br&gt;
where T - time, a,b - constants, n - size of input&lt;/p&gt;

&lt;p&gt;&lt;u&gt;Steps to find which type of time complexity we are using&lt;/u&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Find the fastest growing term in the given function.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Take out the coefficient out of the fastest growing term&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;What remains is what goes inside the brackets in our notation O(**).&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;2.O(1)&lt;/strong&gt;&lt;br&gt;
(1) - refers to the run time complexity of the method.&lt;br&gt;
Constant amount of time. This is when the amount of time it takes to complete  a function does not increase as the size of input increases.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--qJYv_gUp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/am1mu7ij17o7urjatkvt.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--qJYv_gUp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/am1mu7ij17o7urjatkvt.jpg" alt="Constant time complexity" width="569" height="364"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3.O(n^2)&lt;/strong&gt;&lt;br&gt;
Quadratic time complexity.&lt;br&gt;
This is when the time taken to complete a function increases in quadratic form.&lt;br&gt;
Nested loops run in quadratic time or O(n^2).&lt;br&gt;
Algorithms that run in O(n^2) get slower than algorithms that run in O(n). As the input grows larger, algorithms that run in quadratic time get slower.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--42X8gpTB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0i1n6h3pkclsj5k1yy48.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--42X8gpTB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0i1n6h3pkclsj5k1yy48.jpg" alt="Quadratic time complexity" width="800" height="449"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;4.O(log n)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Logarithmic time&lt;br&gt;
An algorithm with logarithmic time is more scalable than one with linear time.&lt;br&gt;
&lt;em&gt;Examples of algorithms that run in logarithmic time&lt;/em&gt;&lt;br&gt;
Binary search&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--g7g6V8zs--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ny89zraxiluhyy0mispe.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--g7g6V8zs--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ny89zraxiluhyy0mispe.jpg" alt="Logarithmic time complexity" width="720" height="402"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;5.O(2^n)&lt;/strong&gt;&lt;br&gt;
Exponential time&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--0vE3vkLh--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bh81rdm6q4ju1rqkqoww.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--0vE3vkLh--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bh81rdm6q4ju1rqkqoww.jpg" alt="Time complexities" width="720" height="394"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Space complexity&lt;/strong&gt;&lt;br&gt;
Space complexity is the additional space that we should allocate relative to the size of the input.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>programming</category>
      <category>codenewbie</category>
      <category>algorithms</category>
    </item>
    <item>
      <title>Python for everyone: Mastering Python The Right Way!</title>
      <dc:creator>Torine6</dc:creator>
      <pubDate>Tue, 01 Mar 2022 08:17:34 +0000</pubDate>
      <link>https://forem.com/torine6/python-for-everyone-mastering-python-the-right-way-3af4</link>
      <guid>https://forem.com/torine6/python-for-everyone-mastering-python-the-right-way-3af4</guid>
      <description>&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--6yx_iDtD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1fakzkq8gogq4v37ji0t.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--6yx_iDtD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1fakzkq8gogq4v37ji0t.jpg" alt="learning Python" width="648" height="405"&gt;&lt;/a&gt;&lt;br&gt;
Learning any programming language is quite challenging and can sometimes be a difficult task. &lt;br&gt;
It takes time, commitment and passion. If a person does not have a good reason to do it, one may end up quitting along the journey. This article focuses majorly on the steps you can use as a beginner to get started and eventually master Python programming language the right way. It is a kind of road map that a beginner can use as an example, while starting with Python, to create their road map.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# Contents
#STEP 1: Find your motivation🤗
#STEP 2: Learn Python Fundamentals/ basics😇
#STEP 3: Work on a project☺
#STEP 4: Teach others🤭
#STEP 5: Join a community🥰
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;STEP 1. Find your motivation&lt;/strong&gt; &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Most good programmers do programming not because they expect to get paid or get adulation by the public, but because it is fun to program. ~Linus Torvalds&lt;/em&gt; &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It is key that before you begin learning a programming language that you should sit down, reflect and find your motivation to learn that particular language over other languages. &lt;br&gt;
You have to discover the thing that is motivating you to learn Python. &lt;br&gt;
Your motivation can start with an answer to a simple why question: 'Why do I want to learn Python programming language?'.&lt;br&gt;
The answer to this can be the one that pops into your head first. &lt;/p&gt;

&lt;p&gt;&lt;u&gt;&lt;strong&gt;Tips to help with your motivation&lt;/strong&gt; &lt;/u&gt;&lt;br&gt;
Things you can do with Python:&lt;br&gt;
i. Data Science(Machine learning, Data analysis and data visualization)&lt;br&gt;
Machine learning implements an algorithm that automatically detects a pattern in the given input. &lt;/p&gt;

&lt;p&gt;Popular Machine learning algorithms: &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Deep learning. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Neural networks. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Random forest. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Support vector machines. &lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Libraries for ML: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;TensorFlow &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Scikit-learn &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Data analysis is used for extracting information from data and making a decision based on the data. &lt;/p&gt;

&lt;p&gt;Data analysis libraries: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Pandas &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Numpy &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;SciPy &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;IPython &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Data visualization deals with a graphic representation of data. &lt;/p&gt;

&lt;p&gt;Data visualization libraries: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Matplotlib &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;seaborn &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;ii. Web development &lt;br&gt;
Web development is the task of developing websites that can be hosted on the internet. &lt;/p&gt;

&lt;p&gt;Libraries for web development &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Django &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Pyramid &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Flask &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;CherryPy &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;NOTE&lt;/em&gt; that a vague motivation like getting money does not help you to focus on the specific thing that you need to learn.&lt;br&gt;
You will have a difficult time figuring out what to learn after studying the basics of Python if you do not know what you want to use Python for. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;STEP 2:Learn Python fundamentals/ basics&lt;/strong&gt;&lt;br&gt;
You need to learn Python basic Syntax.&lt;br&gt;
Python basics that you need to know include variables, lists, statements(if, if-else, nested if), loops(for loops, while loops), functions(built-in and user-defined functions), classes and objects.&lt;br&gt;
Take the shortest time on this step because you do not need to cram everything.&lt;br&gt;
Learn how to Google when you do not know a concept.&lt;br&gt;
You should get to a point where you can start working on simple projects.&lt;br&gt;
Make use of YouTube videos, tutorials and interactive websites like &lt;a href="https://www.freecodecamp.org/news/learning-python-from-zero-to-hero-120ea540b567/"&gt;freeCodeCamp&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--H7paZ4IY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pcgxx6cj3fegtm2amefm.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--H7paZ4IY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pcgxx6cj3fegtm2amefm.jpg" alt="Python" width="720" height="601"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;STEP 3. Work on a project&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;Choose a project that you can work on.&lt;br&gt;
&lt;u&gt;Tips on choosing a project&lt;/u&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Choose a personal project based on something that interests you. Your project should be something that motivates you.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Choose a simple project, say if you wanted to build a website you can start with a simple Instagram photo and video downloader. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Choose a project that is useful to you and others. &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;u&gt;Benefits of working on projects&lt;/u&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;It helps you practice what you have learnt. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It helps you learn how to solve challenges. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It helps you learn new things. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It helps maintain your motivation. &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;First solve the problem, then write the code ~ John Johnson&lt;/em&gt; &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Try to build projects on your own without using YouTube, tutorials or a guide.&lt;br&gt;
Unlike other disciplines, in programming everyone Googles so do not be afraid to look up something whenever you feel stuck. Stack Overflow is one of the best resources for programming questions.&lt;br&gt;
Work on more difficult projects after getting past solving simple projects on your own. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;STEP 4. Teach others.&lt;/strong&gt; &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;The person who says he knows what he thinks but cannot express it usually does not know what he thinks Mortimer Adler&lt;/em&gt; &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;For this step, I would recommend a technique that I think is the best way to learn something, the Feynman Technique.&lt;br&gt;
This is a technique by Richard Feynman that is used to explain complicated subjects in the simplest terms.&lt;br&gt;
The best way to remember a concept is by writing it down. You can use tutorials and blogs for this.&lt;br&gt;
After learning a concept in Python and understanding it well, try to write it in your understanding.&lt;br&gt;
The Feynman technique recommends explaining something like you are teaching it to a 12-year old.&lt;br&gt;
This helps you not only to refresh your mind of these concepts but also to teach someone else and help them understand.&lt;br&gt;
I would recommend &lt;a href="https://dev.to/"&gt;dev. to&lt;/a&gt; for writing your articles and blogs. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;STEP 5. Join a community&lt;/strong&gt;&lt;br&gt;
Writing your code in the comfort of your room isn't beneficial to anyone, and sometimes you can get STUCK. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--kHk4gKBV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0quq7vgz4n8917vbzfjh.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--kHk4gKBV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0quq7vgz4n8917vbzfjh.jpg" alt="STUCK!" width="340" height="281"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;You need other people to help you.&lt;br&gt;
There are a lot of online and offline communities for programming.&lt;br&gt;
You can search for Twitter or Facebook groups that are within your region and join them.&lt;br&gt;
This also helps with your networking.&lt;br&gt;
You can also join coding boot camps that are free or paid for depending on your financial situation. &lt;a href="https://twitter.com/lux_academy?ref_src=twsrc%5Egoogle%7Ctwcamp%5Eserp%7Ctwgr%5Eauthor"&gt;Lux Tech Academy&lt;/a&gt; is a good starting place and I would 100% recommend it.&lt;br&gt;
These communities can be useful to even help you get an internship or a job where you can improve your skills. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Finally&lt;/strong&gt;&lt;br&gt;
These are the five steps I would recommend for any beginner in Python programming. &lt;br&gt;
Remember to learn by doing, after all the best way to learn Python Programming is to learn Python!&lt;br&gt;
Here's my Twitter:&lt;a href="//Twitter.%20com/vee_mj"&gt;Victorine&lt;/a&gt;&lt;/p&gt;

</description>
      <category>python</category>
      <category>programming</category>
      <category>beginners</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Introduction to Data Structures and Algorithms with Python.</title>
      <dc:creator>Torine6</dc:creator>
      <pubDate>Sat, 19 Feb 2022 21:27:04 +0000</pubDate>
      <link>https://forem.com/torine6/introduction-to-data-structures-and-algorithms-with-python-37pb</link>
      <guid>https://forem.com/torine6/introduction-to-data-structures-and-algorithms-with-python-37pb</guid>
      <description>&lt;h2&gt;
  
  
  FAQs
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;i) What are data structures?&lt;br&gt;
ii) What are algorithms?&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Algorithms are like verbs and data structures are like nouns. An algorithm is just a method of doing something on a computer, a data structure is layout for memory that represents some sort of data. -Om Singh&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;In this article, we are going to look at the basic data structures and algorithms in Python that every beginner should know. First, let us define data structures and algorithms in layman's language to help us have a general outlook of what they are.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Data structures&lt;/strong&gt; are simply the different ways of organizing and storing data in our computers so as to perform operations on the data.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Algorithms&lt;/strong&gt; are the operations that we can perform on different data structures and the set of instructions for executing them.&lt;/p&gt;

&lt;p&gt;Data structures and algorithms help us write efficient software.&lt;/p&gt;
&lt;h2&gt;
  
  
  DATA STRUCTURES
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Built-in data structures&lt;/strong&gt;&lt;br&gt;
There are four types of built-in data structures in Python: lists, tuples, sets and dictionaries.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1.Lists&lt;/strong&gt;&lt;br&gt;
A &lt;em&gt;list&lt;/em&gt; is an ordered collection of items. &lt;br&gt;
It is a type of data used to represent/ store a list of objects in a single variable. &lt;br&gt;
Lists are given descriptive names.&lt;br&gt;
We use square brackets ([ ]) to create a list.&lt;br&gt;
Items inside a list are separated using commas.&lt;br&gt;
We use &lt;code&gt;print()&lt;/code&gt;function to print the output on the terminal.&lt;br&gt;
Lists are indexed from 0.&lt;br&gt;
We can create lists that contain objects of any data type including strings, numbers, Booleans.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# creating a list
numbers = [2, 5, 7, -10]
print(numbers)

# adding a new element at the end of a list
numbers.append(3)
print(numbers)

# adding an item at a specific place in the list
numbers.insert(0, 45)

# removing last element from list
numbers.pop()
print(numbers)

# to access an element on the list
print(numbers[0])

# to modify an element
numbers[0] = 8
print(numbers)

# to determine number of items on a list
print(len(numbers))

# to check index of an item
print(numbers.index(7))

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

&lt;/div&gt;



&lt;p&gt;&lt;u&gt;Other list functions&lt;/u&gt;&lt;br&gt;
&lt;code&gt;in&lt;/code&gt;-to check whether an item exists on our list or not.&lt;br&gt;
&lt;code&gt;for&lt;/code&gt;-to iterate over all values.&lt;br&gt;
&lt;code&gt;extend&lt;/code&gt;-to append lists.&lt;br&gt;
&lt;code&gt;count&lt;/code&gt;-to know how many times a value appears on the list.&lt;br&gt;
&lt;code&gt;sort&lt;/code&gt;-to arrange items on a list in alphabetical order.&lt;br&gt;
&lt;code&gt;reverse&lt;/code&gt;-to reverse the order of lists.&lt;br&gt;
&lt;code&gt;del&lt;/code&gt;-to remove a range of elements from a list.&lt;br&gt;
&lt;code&gt;remove&lt;/code&gt;-to remove an element from a list.&lt;br&gt;
&lt;code&gt;clear&lt;/code&gt;-to remove all elements from a list.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;u&gt;Looping over lists&lt;/u&gt;&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;numbers = [1, 3, 6, 9]
for number in numbers:
    print(number)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;output&lt;br&gt;
1&lt;br&gt;
3&lt;br&gt;
6&lt;br&gt;
9&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2.Tuples&lt;/strong&gt;&lt;br&gt;
A &lt;em&gt;tuple&lt;/em&gt; is an ordered collection of items.&lt;br&gt;
A tuple is used to store a sequence of objects.&lt;br&gt;
A tuple is immutable, it cannot be modified or changed after it is created.&lt;br&gt;
We create tuples using open and close () parentheses.&lt;br&gt;
Tuples are indexed from 0.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# creating tuples
coordinates = (12, 5)
print(coordinates)

# accessing tuples using their index
print(coordinates [1])

# creating a list of tuples
coordinates = [(12, 5), (8, 20)]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;3.Sets&lt;/strong&gt;&lt;br&gt;
A &lt;em&gt;set&lt;/em&gt; is an unordered collection of items which have  no duplicates.&lt;br&gt;
To remove duplicates from lists, we convert them into sets.&lt;br&gt;
A set is mutable, it can be changed or modified once created.&lt;br&gt;
Each element in a set must be unique.&lt;br&gt;
We define sets using curly braces { } or by using the built-in &lt;code&gt;set&lt;/code&gt; function.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# removing duplicates from a list
numbers = [9, 16, 3, 4, 9, 3]
unique_numbers = set(numbers)
print(unique_numbers)

# union of sets
first_set = {3, 4}
second_set = {5, 6}
print(first | second)

# intersection of sets
print(first_set &amp;amp; second_set)

#difference between two sets
print(first_set - second_set)

#symmetric difference
print(first_set ^ second_set)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;u&gt;Iterating over elements in a set&lt;/u&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;numbers = {3, 7}
for x in numbers:
    print(x)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;output&lt;br&gt;
3&lt;br&gt;
7&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4.Dictionaries&lt;/strong&gt;&lt;br&gt;
A &lt;em&gt;dictionary&lt;/em&gt; is an unordered collection of items.&lt;br&gt;
Dictionaries allow us to store information in key-value pairs, each key is associated with a different value.&lt;br&gt;
The key must be unique and immutable.&lt;br&gt;
Keys are case sensitive. &lt;br&gt;
We can use strings, numbers or tuples as keys.&lt;br&gt;
We separate the key from its value using a colon ( : ).&lt;br&gt;
The value can be any data type.&lt;br&gt;
We can assign one value to multiple keys.&lt;br&gt;
Items in a dictionary are separated using commas( , ).&lt;br&gt;
We can create dictionaries using &lt;code&gt;dict()&lt;/code&gt; method.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# creating a dictionary 
user = {"name": "Paula", "age":28, "hobbies": ["dancing", "singing"]}
print(user)

# accessing a specific key
print(user["name"])

# specifying a default value for keys that do not exist
print(user.get("email", "Invalid key"))

# adding a key to the dictionary
user["email"] = "lady@gmail.com"
print(user.get("email"))

# changing value of a key 
user[name] = "Pam"
print(user)

# to modify several or all values
user.update({"name": "Reuben", "age": 21, "email": "kreuben@gmail.com"})

# to delete a key
del user["hobbies"]
print(user)

# looping through keys and values
for key, value in user.items():
    print(key, value)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;User-defined data structures&lt;/strong&gt;&lt;br&gt;
These are data structures that are not supported by Python, but can be programmed by the user to function similarly to Python built-in data structures. &lt;br&gt;
We will look at stacks, queues and linked lists.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1.Stacks&lt;/strong&gt;&lt;br&gt;
A stack is a linear data structure that follows the LIFO(Last In First Out) principle.&lt;br&gt;
A good example of a stack is a browser.&lt;br&gt;
Stacks in Python can be implemented using lists, Collections.deque, queue.LifoQueue&lt;br&gt;
&lt;u&gt;Functions we can perform on stacks&lt;/u&gt;&lt;br&gt;
&lt;code&gt;append&lt;/code&gt;/ &lt;code&gt;push()&lt;/code&gt; -to add an item on top of the stack.&lt;br&gt;
&lt;code&gt;pop()&lt;/code&gt; -to remove an item on top of the stack.&lt;br&gt;
&lt;code&gt;peek&lt;/code&gt;/ &lt;code&gt;top()&lt;/code&gt; - to view the top element of the stack.&lt;br&gt;
&lt;code&gt;size()&lt;/code&gt;-returns the size of the stack.&lt;br&gt;
&lt;code&gt;[-1]&lt;/code&gt; -to get the item that is on top of the stack. It only works if our stack is not empty.&lt;br&gt;
&lt;code&gt;empty()&lt;/code&gt;-to return whether the stack is empty.&lt;/p&gt;

&lt;p&gt;&lt;u&gt;Uses of stacks&lt;/u&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Used for calling a function.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;Undo&lt;/code&gt; uses stacks to track down the last set of operations.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;2.Queues&lt;/strong&gt;&lt;br&gt;
A queue is a linear data structure that follows FIFO(First In First Out) principle. &lt;br&gt;
Insertion and deletion in queues happens on the rear-end and front-end.&lt;br&gt;
Example of a queue is where customers line up for a resource.&lt;br&gt;
In Python, queues can be implemented using lists, collection.deque, queue.Queue&lt;/p&gt;

&lt;p&gt;&lt;u&gt;Queue operations&lt;/u&gt;&lt;br&gt;
&lt;code&gt;enqueue&lt;/code&gt; - to add an item to the queue.&lt;br&gt;
&lt;code&gt;dequeue&lt;/code&gt; - to remove an item from the queue.&lt;br&gt;
&lt;code&gt;front&lt;/code&gt; - to get the first item from the queue.&lt;br&gt;
&lt;code&gt;rear&lt;/code&gt; - to get the last item from the queue.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3.Linked list&lt;/strong&gt;&lt;br&gt;
 A linked list is a data structure for storing a collection of items.&lt;br&gt;
A linked list can be visualized as several boxes connected to each other.&lt;br&gt;
The data used in linked lists can be strings, numbers, characters, etc.&lt;br&gt;
Linked lists can be used to implement stacks, queues and graphs.&lt;/p&gt;

&lt;h3&gt;
  
  
  NOTE
&lt;/h3&gt;

&lt;p&gt;Use &lt;a href="https://github.com/Torine6/pythonProject2/blob/master/main.py"&gt;this link&lt;/a&gt;to check out the codes used in the article.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Other useful material&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://medium.com/swlh/differences-between-data-structures-and-algorithms-eed2c1872cfc#:~:text=Data%20Structure%20is%20about%20organising,to%20reach%20the%20desired%20output."&gt;1. Difference between data structures and algorithms&lt;/a&gt;&lt;br&gt;
&lt;a href="https://towardsdatascience.com/8-common-data-structures-every-programmer-must-know-171acf6a1a42#:~:text=Data%20Structures%20are%20a%20specialized,Computer%20Science%20and%20Software%20Engineering."&gt;2. Common data structures every programmer must know&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.geeksforgeeks.org/inbuilt-data-structures-python/#:~:text=Python%20has%20four%20basic%20inbuilt,%2C%20Dictionary%2C%20Tuple%20and%20Set.&amp;amp;text=Lists%3A%20Lists%20in%20Python%20are,more%20like%20variations%20of%20lists."&gt;3. Inbuilt data structures in Python&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.tutorialsteacher.com/python/python-dictionary"&gt;4. Dictionaries in Python&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.geeksforgeeks.org/user-defined-data-structures-in-python/"&gt;5. User-defined data structures&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.geeksforgeeks.org/queue-in-python/"&gt;6. Queues in Python&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.geeksforgeeks.org/stack-in-python/#:~:text=Implementation%20using%20list%3A,the%20element%20in%20LIFO%20order."&gt;7. Stacks in Python&lt;/a&gt;&lt;br&gt;
&lt;a href="https://realpython.com/linked-lists-python/#introducing-collectionsdeque"&gt;8. Linked lists in Python&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.educative.io/edpresso/how-to-create-a-linked-list-in-python"&gt;9. How to create linked lists&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.youtube.com/watch?v=pkYVOmU3MgA&amp;amp;t=632s"&gt;10. YouTube video&lt;/a&gt;&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>programming</category>
      <category>tutorial</category>
      <category>python</category>
    </item>
    <item>
      <title>Python Intermediate Concepts.</title>
      <dc:creator>Torine6</dc:creator>
      <pubDate>Wed, 16 Feb 2022 12:49:46 +0000</pubDate>
      <link>https://forem.com/torine6/python-intermediate-concepts-1hbn</link>
      <guid>https://forem.com/torine6/python-intermediate-concepts-1hbn</guid>
      <description>&lt;h2&gt;
  
  
  A. Control Flow Structures
&lt;/h2&gt;

&lt;p&gt;They determine the order in which instructions are executed in our programs.&lt;br&gt;
For more information visit &lt;a href="https://www.educative.io/edpresso/what-are-control-flow-statements-in-python"&gt;https://www.educative.io/edpresso/what-are-control-flow-statements-in-python&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;strong&gt;1. Sequential Control&lt;/strong&gt;&lt;/em&gt;&lt;br&gt;
In sequential control, the execution process follows the order in which we write our instructions, i.e line-by-line execution .&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')
print('How are you')
print('Welcome to Lux Tech Academy')

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

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;#output&lt;br&gt;
Hello&lt;br&gt;
How are you&lt;br&gt;
Welcome to Lux Tech Academy&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;strong&gt;2. Selection Control/ Decision Control&lt;/strong&gt;&lt;/em&gt;&lt;br&gt;
Here, we have a condition and statements are executed based on the condition. If the condition is true, then only the &lt;code&gt;True&lt;/code&gt; statements are executed while the &lt;code&gt;False&lt;/code&gt; statements are ignored, and vice versa.&lt;br&gt;
There is a selection of statements based on the condition that is true.&lt;br&gt;
We have different types of selection control statements;&lt;br&gt;
&lt;em&gt;&lt;u&gt;i) simple if statement&lt;/u&gt;&lt;/em&gt;&lt;br&gt;
The block of code is executed whenever the condition is true. If the condition is false, the code is not executed&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;temperature = 35
if temperature &amp;gt; 30:
   print("It is a hot day.")
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;#output&lt;br&gt;
It is a hot day&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;u&gt;ii) if-else statement&lt;/u&gt;&lt;/em&gt;&lt;br&gt;
This is used to evaluate a statement or a block of statement based on the given condition. The &lt;code&gt;if&lt;/code&gt; block of code is executed whenever the condition is true. The &lt;code&gt;else&lt;/code&gt; block of code is executed whenever the condition is false.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;value =int(input("Enter an integer: ))
if value&amp;lt;10:
    print("value is less than 10")
else:
    print("value is greater than 10")
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;&lt;u&gt;iii) Multiway selection&lt;/u&gt;&lt;/em&gt;&lt;br&gt;
These allow us to execute multiple expressions.&lt;br&gt;
&lt;em&gt;&amp;gt;&amp;gt;&lt;strong&gt;nested if statement&lt;/strong&gt;&lt;/em&gt;&lt;br&gt;
These are &lt;code&gt;if&lt;/code&gt; statements inside other &lt;code&gt;if&lt;/code&gt; statements.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;num_1 = float(input("Enter a number: "))
if num_1 &amp;gt;= 0:
    if num_1 == 0:
        print("The number is zero.")
    else:
        print("This is a positive number.")
else:
    print("This is a negative number.")
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;&amp;gt;&amp;gt;&lt;strong&gt;if-elif-else statement&lt;/strong&gt;&lt;/em&gt;&lt;br&gt;
Here, only one block of code is executed based on the condition. If the &lt;code&gt;if&lt;/code&gt; block of code is false, the &lt;code&gt;elif&lt;/code&gt; block is executed. If all the conditions are false, the &lt;code&gt;else&lt;/code&gt; block of code is executed.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;temperature = 19
if temperature &amp;gt; 35:
    print("It is a hot day.")
elif temperature &amp;gt; 20:
    print("It is a good day")
else:
    print("Enjoy your day.")
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;#output&lt;br&gt;
It is a good day&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;The link &lt;a href="https://www.datacamp.com/community/tutorials/python-if-elif-else?utm_source=adwords_ppc&amp;amp;utm_medium=cpc&amp;amp;utm_campaignid=1455363063&amp;amp;utm_adgroupid=65083631748&amp;amp;utm_device=c&amp;amp;utm_keyword=&amp;amp;utm_matchtype=&amp;amp;utm_network=g&amp;amp;utm_adpostion=&amp;amp;utm_creative=332602034364&amp;amp;utm_targetid=dsa-429603003980&amp;amp;utm_loc_interest_ms=&amp;amp;utm_loc_physical_ms=9076838&amp;amp;gclid=Cj0KCQiA3rKQBhCNARIsACUEW_ZmhCnRNOBp3kY6kGuq6_-Z3ZKZntTEOMd4LQWgZMR1XztQjBaEOEUaAiueEALw_wcB"&gt;https://www.datacamp.com/community/tutorials/python-if-elif-else?utm_source=adwords_ppc&amp;amp;utm_medium=cpc&amp;amp;utm_campaignid=1455363063&amp;amp;utm_adgroupid=65083631748&amp;amp;utm_device=c&amp;amp;utm_keyword=&amp;amp;utm_matchtype=&amp;amp;utm_network=g&amp;amp;utm_adpostion=&amp;amp;utm_creative=332602034364&amp;amp;utm_targetid=dsa-429603003980&amp;amp;utm_loc_interest_ms=&amp;amp;utm_loc_physical_ms=9076838&amp;amp;gclid=Cj0KCQiA3rKQBhCNARIsACUEW_ZmhCnRNOBp3kY6kGuq6_-Z3ZKZntTEOMd4LQWgZMR1XztQjBaEOEUaAiueEALw_wcB&lt;/a&gt; contains more information on the different types of decision control statements.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;strong&gt;3. Iterative Control&lt;/strong&gt;&lt;/em&gt;&lt;br&gt;
There is a condition. The &lt;code&gt;True&lt;/code&gt; statement is executed repeatedly as long as the condition is true. When the condition becomes false, it comes out from the loop.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;i = 0
while i&amp;lt;=10:
      print(i)
      i += i
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;#output is&lt;br&gt;
1&lt;br&gt;
2&lt;br&gt;
3&lt;br&gt;
4&lt;br&gt;
5&lt;br&gt;
6&lt;br&gt;
7&lt;br&gt;
8&lt;br&gt;
9&lt;br&gt;
10&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  B)Functions
&lt;/h2&gt;

&lt;p&gt;A function is a 'container' for lines of code that perform a specific task. Functions help us organize our code by breaking is into smaller blocks that are more manageable.&lt;br&gt;
&lt;strong&gt;Types of functions&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Built-in functions 
These are functions that can be used directly in the program.
Examples: &lt;code&gt;int()&lt;/code&gt;
      &lt;code&gt;float()&lt;/code&gt;
      &lt;code&gt;bool()&lt;/code&gt;
      &lt;code&gt;str()&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;User-defined functions
These are functions that a user defines using the &lt;code&gt;def&lt;/code&gt; keyword. Python keywords cannot be used as the function name.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;em&gt;Syntax of python functions&lt;/em&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;We use &lt;code&gt;def&lt;/code&gt; reserve keyword to define functions.&lt;/li&gt;
&lt;li&gt;Function name- we name out function with lower case characters and use underscore if we are naming the function using multiple words for example,&lt;code&gt;say_hello&lt;/code&gt;. Use meaningful and descriptive names for your functions.&lt;/li&gt;
&lt;li&gt;Parameter - this is the value that we give to the function and is usually listed inside the parentheses.&lt;/li&gt;
&lt;li&gt;Colon(:)- This tells Python that we are defining a block of code and all the lines of code after the colon are indented and belong to the function.&lt;/li&gt;
&lt;li&gt;docstrings- Python documentation strings(docstrings)describe what the function does. They are declared using '''triple single quotes''' or """triple double quotes"""&lt;/li&gt;
&lt;li&gt;Statements- these are the lines of code that give Python instructions to be executed.&lt;/li&gt;
&lt;li&gt;Return statements-they return the result of the function to the user. By default, all Python functions return &lt;code&gt;None&lt;/code&gt;, we can return our function value by using &lt;code&gt;return&lt;/code&gt; statement.
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;def cube(number):
    return number*number*number
print(number)

print(cube(5))
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;#output == 125&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;u&gt;Advantages of functions&lt;/u&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Enhances readability of a program.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;They maximize reusability of the code&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;They minimize redundancy&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Improve the clarity of the code.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Types of arguments&lt;/strong&gt;&lt;br&gt;
An argument is the value that is sent to the function when we are calling the function. Types of arguments in function definition include:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Positional arguments
-Positional arguments are arguments that have to be passed in their correct order. They can be called by their position in the function definition.&lt;/li&gt;
&lt;li&gt;Keyword arguments 
-A keyword argument helps us to change the position of an argument. It is used when we know the exact number of arguments we want to pass.&lt;/li&gt;
&lt;li&gt;Default arguments
-A default argument is used in the case where the user does not provide a value for the parameter. The default argument assumes default values for the argument when calling the function.
Here we use the assignment operator (=).&lt;/li&gt;
&lt;li&gt;Variable-length arguments
-These are used when the number of arguments we want to pass is unknown. Here, we add * before the parameter.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Recursive functions&lt;/strong&gt;&lt;br&gt;
A recursive function is a function that calls itself.&lt;br&gt;
&lt;u&gt;Advantages&lt;/u&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Recursive functions are used for sequence generation. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;They make the code look clean.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;u&gt;Disadvantages&lt;/u&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Recursive functions are difficult to debug&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Recursive functions take up a lot of time and memory.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Lambda functions&lt;/strong&gt;&lt;br&gt;
A lambda function is an anonymous function, which is a function without a name.&lt;br&gt;
Lambda functions are defined using &lt;code&gt;lambda&lt;/code&gt; keyword.&lt;br&gt;
Lambda functions are limited to a single line of code.&lt;br&gt;
They can be assigned to variables and used as normal functions.&lt;br&gt;
Lambda functions use filter and map.&lt;br&gt;
&lt;em&gt;&lt;u&gt;Filter&lt;/u&gt;&lt;/em&gt;&lt;br&gt;
The &lt;code&gt;filter()&lt;/code&gt;function takes in items in a list and returns a new list with items which the function evaluates to &lt;code&gt;True&lt;/code&gt;&lt;br&gt;
&lt;em&gt;&lt;u&gt;Map&lt;/u&gt;&lt;/em&gt;&lt;br&gt;
The &lt;code&gt;map()&lt;/code&gt;function takes in items in a list and returns a new list which contains items returned by the function for each item on the list.&lt;/p&gt;

&lt;h2&gt;
  
  
  C)Classes and objects
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Classes&lt;/strong&gt;&lt;br&gt;
A class is a blueprint from which you can create objects.&lt;br&gt;
Classes are defined by &lt;code&gt;class&lt;/code&gt; keyword.&lt;br&gt;
&lt;u&gt;Methods&lt;/u&gt;&lt;br&gt;
These are functions defined inside the body of a class. They are used to define behavior of an object.&lt;br&gt;
&lt;u&gt;Inheritance&lt;/u&gt;&lt;br&gt;
Inheritance is the process of creating a new class by using details of an existing class without modifying it.&lt;br&gt;
It allows us to inherit attributes and methods from a parent class.&lt;br&gt;
The newly formed class is known as a &lt;u&gt;derived&lt;/u&gt; / &lt;u&gt;child class&lt;/u&gt;.&lt;br&gt;
The existing class is referred to as a &lt;u&gt;base&lt;/u&gt; or &lt;u&gt;parent class&lt;/u&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Objects&lt;/strong&gt;&lt;br&gt;
An object is an instantiation(copy) of a class.&lt;br&gt;
It is a collection of data variables and functions that act on that data.&lt;br&gt;
&lt;u&gt;Instance variables&lt;/u&gt; /&lt;u&gt;Attributes&lt;/u&gt;&lt;br&gt;
These are variables defined inside an object. They are used to get details about the object.&lt;/p&gt;

&lt;h2&gt;
  
  
  NOTE
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;You can check out my GitHub if you would like to run the codes in the article. &lt;br&gt;
Here is the link:&lt;a href="https://github.com/Torine6/pythonProject1/blob/master/main.py"&gt;https://github.com/Torine6/pythonProject1/blob/master/main.py&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

</description>
      <category>python</category>
      <category>beginners</category>
      <category>programming</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Introduction to Modern Python.</title>
      <dc:creator>Torine6</dc:creator>
      <pubDate>Fri, 11 Feb 2022 21:58:38 +0000</pubDate>
      <link>https://forem.com/torine6/python-101-introduction-to-modern-python-2ac9</link>
      <guid>https://forem.com/torine6/python-101-introduction-to-modern-python-2ac9</guid>
      <description>&lt;p&gt;Python is one of the most popular programming languages that is sought after for jobs by employers. Python is powerful, easy to use and beginner-friendly. This article introduces the reader to basic concepts that they require to know in order to get started programming with Python.&lt;/p&gt;

&lt;h2&gt;
  
  
  Fun fact
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;Python was developed by Guido van Rossum in the late 1980s.&lt;/em&gt;&lt;br&gt;
&lt;em&gt;Guido van Rossum was reading scripts from a BBC comedy series known as "Monty Python's Flying Circus".&lt;/em&gt;&lt;br&gt;
&lt;em&gt;He wanted a name that was short and unique, hence he named the language Python.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Installing Python&lt;/strong&gt;&lt;br&gt;
Visit &lt;a href="http://www.python.org"&gt;www.python.org&lt;/a&gt; to download and install the latest python version. Python 3 is best for beginners since it is being actively maintained and supported by Python.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Install a text editor&lt;/strong&gt;&lt;br&gt;
Visit &lt;a href="https://www.python.org/about/gettingstarted/"&gt;https://www.python.org/about/gettingstarted/&lt;/a&gt; to learn about which text editor and IDE is best for beginners in Python. You can download and install PyCharm community version at &lt;a href="https://www.jetbrains.com/pycharm/download/#section=windows"&gt;https://www.jetbrains.com/pycharm/download/#section=windows&lt;/a&gt;, or Visual Studio Code at &lt;a href="https://code.visualstudio.com"&gt;https://code.visualstudio.com&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Creating your first python program&lt;/strong&gt;&lt;br&gt;
1) Open your IDE and select 'create a new project'.&lt;br&gt;
2) Choose a location for your project and an interpreter.&lt;br&gt;
3) Click on create.&lt;br&gt;
4) Right-click on 'File' then click on 'New'&amp;gt;'Python File' and give it a name ,say 'Pyth' then click 'Ok'.&lt;br&gt;
5) We can begin by writing a basic Python program, the Hello World! program. We do this by typing in&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 World!')

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

&lt;/div&gt;



&lt;p&gt;6) Go to the 'Run' menu and select the 'Run' button in order to run your program.&lt;br&gt;
7) At the bottom of the screen, you should be able to see&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Hello World!
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;8) Congratulations, you have written your first Python program!&lt;br&gt;
Check out the tutorial at &lt;a href="https://realpython.com"&gt;https://realpython.com&lt;/a&gt; or &lt;a href="https://www.guru.com"&gt;https://www.guru.com&lt;/a&gt; for these steps.&lt;br&gt;
Also check out &lt;a href="https://www.youtube.com/watch?v=_uQrJ0TkZlc"&gt;https://www.youtube.com/watch?v=_uQrJ0TkZlc&lt;/a&gt; for beginner-friendly YouTube videos.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Program&lt;/strong&gt;&lt;br&gt;
A program refers to the lines of code that give the computer the instructions to be executed.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Console&lt;/strong&gt;&lt;br&gt;
The console is where Python outputs the code. The program is executed in order, from top to bottom.&lt;br&gt;
We use &lt;code&gt;print&lt;/code&gt; statement to execute instructions in Python e.g&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 World')

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

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Receiving input&lt;/strong&gt;&lt;br&gt;
We use &lt;code&gt;input&lt;/code&gt; to read values from the terminal window.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;first_number = input('Enter your first number: ')
print(first_number)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Comments&lt;/strong&gt;&lt;br&gt;
Comments are added using hash character &lt;code&gt;#&lt;/code&gt;.They can be used to make the code more readable by explaining the code.&lt;br&gt;
&lt;strong&gt;&lt;u&gt;NOTE&lt;/u&gt;&lt;/strong&gt;&lt;br&gt;
Python does not execute comments.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;#anything after this hash character is a comment.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Keywords&lt;/strong&gt;&lt;br&gt;
Keywords are reserve words in Python that have special meaning.&lt;br&gt;
They are written in lower-case except for &lt;code&gt;True&lt;/code&gt; and &lt;code&gt;False&lt;/code&gt; keywords.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Type conversions&lt;/strong&gt;&lt;br&gt;
The types of data in Python include strings, numbers and Boolean values.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;1.Strings&lt;/em&gt;&lt;br&gt;
A string is a sequence of characters. In Python we surround strings with quotes, either single &lt;code&gt;'Hello World!'&lt;/code&gt; or double &lt;code&gt;"Hello World!"&lt;/code&gt; quotes.&lt;br&gt;
&lt;strong&gt;&lt;u&gt;String concatenation&lt;/u&gt;&lt;/strong&gt;&lt;br&gt;
String concatenation refers to combining one string with another e.g&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'+ ' Pam')
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;# Output&lt;br&gt;
Hello Pam&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;2.Numbers&lt;/em&gt;&lt;br&gt;
We can store numbers inside variables. &lt;br&gt;
We use parentheses to specify the order of operations e.g &lt;code&gt;((3+4)*7)&lt;/code&gt;.&lt;br&gt;
We use &lt;code&gt;str&lt;/code&gt; function to print out a number next to a string e.g&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;my_num = 6
print(str(my_num) + ' is the best number.')
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;#in the console this produces 6 is the best number&lt;/code&gt;&lt;br&gt;
&lt;em&gt;&lt;u&gt;Arithmetic&lt;/u&gt;&lt;/em&gt;&lt;br&gt;
i)  Addition&lt;code&gt;(+)&lt;/code&gt;&lt;br&gt;
ii) Subtraction&lt;code&gt;(-)&lt;/code&gt;&lt;br&gt;
iii)Multiplication &lt;code&gt;(*)&lt;/code&gt;&lt;br&gt;
iv) Division&lt;code&gt;(/)&lt;/code&gt;&lt;br&gt;
v)  Modulus&lt;code&gt;(%)&lt;/code&gt;&lt;br&gt;
vi) Exponent&lt;code&gt;(**)&lt;/code&gt;&lt;br&gt;
vii)Equality operator&lt;code&gt;(==)&lt;/code&gt;&lt;br&gt;
viii)Not equal&lt;code&gt;(!=)&lt;/code&gt;&lt;br&gt;
ix)  Comparison operators&lt;code&gt;(&amp;gt;,&amp;gt;=,&amp;lt;,&amp;lt;=)&lt;/code&gt;&lt;br&gt;
&lt;em&gt;&lt;u&gt;examples&lt;/u&gt;&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;print(5 + 3) 
print(5 - 3)
print(5 * 3)
print(5 /3)
print(5 % 3)
print(5 ** 3)
print(5 != 3) 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;3.Boolean values&lt;/em&gt;&lt;br&gt;
Boolean values are defined by &lt;code&gt;True&lt;/code&gt; and &lt;code&gt;False&lt;/code&gt; keywords.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Variables&lt;/strong&gt;&lt;br&gt;
A variable is used to store data temporarily in the computer memory.&lt;br&gt;
We start by declaring the name of the variable equal to the value of the variable e.g &lt;code&gt;age=20&lt;/code&gt;.&lt;br&gt;
We can declare a variable and assign it a string value e.g &lt;code&gt;name = "Pam"&lt;/code&gt;.&lt;br&gt;
If you are using multiple words for the name of a variable, separate the name with an underscore e.g &lt;code&gt;first_name&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Functions&lt;/strong&gt;&lt;br&gt;
A function is a collection of code that performs a specific task. Any code inside the function needs to be indented.&lt;br&gt;
The &lt;code&gt;def&lt;/code&gt; keyword is used to define a function in Python.&lt;br&gt;
A code inside a function can only be executed when we call the function i.e type out the function name followed by open-close parenthesis ().&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;def say_hello():
    print('Hello User')

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

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;#console shows Hello User&lt;/code&gt;&lt;br&gt;
Functions are used to modify strings and to get more information about strings.&lt;br&gt;
&lt;em&gt;&lt;u&gt;Built-in functions&lt;/u&gt;&lt;/em&gt;&lt;br&gt;
They are used to convert functions to variables and include;&lt;br&gt;
&lt;code&gt;int()&lt;/code&gt;&lt;br&gt;
&lt;code&gt;float()&lt;/code&gt;&lt;br&gt;
&lt;code&gt;bool()&lt;/code&gt;&lt;br&gt;
&lt;code&gt;str()&lt;/code&gt;&lt;br&gt;
&lt;em&gt;&lt;u&gt;Functions related to numbers&lt;/u&gt;&lt;/em&gt;&lt;br&gt;
&lt;code&gt;abs&lt;/code&gt;-absolute value.&lt;br&gt;
&lt;code&gt;pow&lt;/code&gt;-power.&lt;br&gt;
&lt;code&gt;max&lt;/code&gt;-gives the largest number.&lt;br&gt;
&lt;code&gt;min&lt;/code&gt;-gives the smallest number.&lt;br&gt;
&lt;code&gt;round&lt;/code&gt;-rounding up/down.&lt;br&gt;
&lt;code&gt;ceil&lt;/code&gt;-ceiling function.&lt;br&gt;
&lt;code&gt;sqrt&lt;/code&gt;-square root.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Parameter&lt;/strong&gt;&lt;br&gt;
A parameter is a value that you can give to a function.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;def say_hello(name):
    print('Hello '+ name)

say_hello('Pam')
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;#console shows Hello Pam&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Return statement&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;return&lt;/code&gt; keyword allows Python to return information from a function. In Python we can return any data types.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;def square(num):
    return num*num 

result = square(5)
print(result)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;#console gives 25&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Logical operators&lt;/strong&gt;&lt;br&gt;
These are used to evaluate expressions to Boolean values.&lt;/p&gt;

&lt;p&gt;i) &lt;code&gt;and&lt;/code&gt;-returns &lt;code&gt;True&lt;/code&gt; if both expressions return &lt;code&gt;True&lt;/code&gt;.&lt;br&gt;
ii) &lt;code&gt;or&lt;/code&gt;-returns &lt;code&gt;True&lt;/code&gt; if at least one expression returns &lt;code&gt;True&lt;/code&gt;.&lt;br&gt;
iii) &lt;code&gt;not&lt;/code&gt;-is placed at the beginning and inverse any value.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;If statements&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;if&lt;/code&gt; statements are used to make decisions in our programs.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;num1 = float(input("Enter first number: "))
op = input("Enter operator: ")
num2 = float(input("Enter second number: ")

if op == "+"
     print(num1 + num2)
elif op == "-"
     print(num1 - num2)
elif op == "*"
     print(num1 * num2)
elif op == "/"
     print(num1 / num2)
else: 
     print("Invalid operator")
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;While loops&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;while&lt;/code&gt; loop is used to repeat and execute a block of code multiple times. The code inside the loop gets executed as long as the condition holds.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;i = 1
while i &amp;lt;= 10:
     print(i)
     i = i + 1  #can also use i += 1
print('Done')
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;#console shows&lt;br&gt;
1&lt;br&gt;
2&lt;br&gt;
3&lt;br&gt;
4&lt;br&gt;
5&lt;br&gt;
6&lt;br&gt;
7&lt;br&gt;
8&lt;br&gt;
9&lt;br&gt;
10&lt;br&gt;
Done&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;For loops&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;for&lt;/code&gt; loops are used to iterate over a sequence, which can be a string, list, tuple, set, dictionary or other iterable objects.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;fruits = ['peach', 'passion', 'pear']
for word in fruits:
    print(word)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;#console gives us&lt;br&gt;
peach&lt;br&gt;
passion&lt;br&gt;
pear&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Index&lt;/strong&gt;&lt;br&gt;
An &lt;code&gt;index&lt;/code&gt; tells us where a specific character is located inside our string, list or tuple. Strings are indexed starting with 0.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Lists&lt;/strong&gt;&lt;br&gt;
A list is an ordered collection of items. We give lists descriptive names. We can access elements on a list based off of their index.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;fruits = ["bananas", "oranges", "mangoes", "apples"]
print(fruits[0])
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;#console shows bananas&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;u&gt;List Functions&lt;/u&gt;&lt;/em&gt;&lt;br&gt;
&lt;code&gt;append&lt;/code&gt;-to add a new element at the end of a list.&lt;br&gt;
&lt;code&gt;insert&lt;/code&gt;-to add a new element at the beginning of a list.&lt;br&gt;
&lt;code&gt;in&lt;/code&gt;-to check whether an item exists on our list or not.&lt;br&gt;
&lt;code&gt;len&lt;/code&gt;-to know how many items we have on a list.&lt;br&gt;
&lt;code&gt;for&lt;/code&gt;-to iterate over all values.&lt;br&gt;
&lt;code&gt;extend&lt;/code&gt;-to append lists.&lt;br&gt;
&lt;code&gt;count&lt;/code&gt;-to know how many times a value appears on the list.&lt;br&gt;
&lt;code&gt;sort&lt;/code&gt;-to arrange items on a list in alphabetical order.&lt;br&gt;
&lt;code&gt;reverse&lt;/code&gt;-to reverse the order of lists.&lt;br&gt;
&lt;code&gt;remove&lt;/code&gt;-to remove an element from a list.&lt;br&gt;
&lt;code&gt;pop&lt;/code&gt;-to remove the last element from a list.&lt;br&gt;
&lt;code&gt;clear&lt;/code&gt;-to remove all elements from a list.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tuples&lt;/strong&gt;&lt;br&gt;
Tuples are used to store a sequence of objects. Tuples are &lt;em&gt;immutable&lt;/em&gt;, once they are created they cannot be changed or modified. They are indexed starting with 0.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;coordinates = (35, 67)
print(coordinates[0])
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;#console shows 35&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Dictionaries&lt;/strong&gt;&lt;br&gt;
Dictionaries are special structures that allow us to store information in key-value pairs. Each key in a key-value pair is associated with a given value. The keys must be unique. A value can be a string, number, list or a tuple.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ex_dict = {
      "Mon": "Monday",
      "Tue": "Tuesday",
      "Wed": "Wednesday",
      "Thu": "Thursday",
      "Fri": "Friday",
      }
 print(ex_dict.get("Wed"))
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;#console shows Wednesday&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Files&lt;/strong&gt;&lt;br&gt;
Python &lt;code&gt;read&lt;/code&gt; command allows us to get information from a file stored outside of a Python file.&lt;br&gt;
The built-in &lt;code&gt;open()&lt;/code&gt; function is used to open files.&lt;br&gt;
We can open files in different modes;&lt;br&gt;
&lt;code&gt;'r'&lt;/code&gt;-&lt;em&gt;read mode&lt;/em&gt; -used only to read information from a file.&lt;br&gt;
&lt;code&gt;'w'&lt;/code&gt;-&lt;em&gt;write mode&lt;/em&gt; -used when we want to change existing information in the file.&lt;br&gt;
&lt;code&gt;'a'&lt;/code&gt;-&lt;em&gt;append mode&lt;/em&gt;-used to add new information at the end of a file.&lt;br&gt;
&lt;code&gt;'r+'&lt;/code&gt;-&lt;em&gt;read and write mode&lt;/em&gt;-allows us to read and write inside our file.&lt;br&gt;
&lt;code&gt;'t'&lt;/code&gt;- to open a file in text mode.&lt;br&gt;
&lt;code&gt;'b'&lt;/code&gt;-to open a file in binary mode.&lt;br&gt;
We use &lt;code&gt;close()&lt;/code&gt; function to close a file.&lt;br&gt;
For example, if we have a file outside python named workers, then we can read it using:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;workers_file = open('workers.txt', 'r')

print(workers_file.read())

workers_file.close()

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

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Classes and Objects&lt;/strong&gt;&lt;br&gt;
Classes and objects in Python help us represent items that cannot be represented as strings, numbers or Booleans.&lt;br&gt;
We can create our own new data types using classes and objects.&lt;br&gt;
Classes are defined by the &lt;code&gt;class&lt;/code&gt; keyword.&lt;br&gt;
The tutorial &lt;a href="https://www.programiz.com/python-programming/class"&gt;https://www.programiz.com/python-programming/class&lt;/a&gt; gives us more information on classes and objects.&lt;/p&gt;

</description>
      <category>programming</category>
      <category>python</category>
      <category>beginners</category>
      <category>help</category>
    </item>
  </channel>
</rss>
