Python Full Stack Documentation

Download as pdf or txt
Download as pdf or txt
You are on page 1of 31

PRAKASAM ENGINEERING COLLEGE

Approved by AICTE, New Delhi |Affiliated to JNTU – Kakinada


O.V. Road , Kandukur – 523105, Prakasam ( Dist ), AP. INDIA
T : 08598 222288, 221200 F : 08598 221300 | www.prakasamec.com

CERTIFICATE

This is to certify that the bonafide report of the internship work done in the

deportment of by

Mr./Miss.

Of semester H.T.No

During the academic year -

Faculty – in charge Head of the Department

Internal Examiner External Examiner


INDEX
CHAPTER 1 : EXECUTIVE SUMMARY

CHAPTER 2 : OVERVIEW OF THE ORGANIZATION

CHAPTER 3 : INTERNSHIP PART

CHAPTER 4 : WEEKLY ACTIVITY LOG

• ACTIVITY LOG FOR THE FIRST WEEK


• ACTIVITY LOG FOR THE SECOND WEEK
• ACTIVITY LOG FOR THE THIRD WEEK
• ACTIVITY LOG FOR THE FOURTH WEEK
• ACTIVITY LOG FOR THE FIFTH WEEK
• ACTIVITY LOG FOR THE SIXTH WEEK

CHAPTER 5 : OUTCOMES DESCRIPTION

CHAPTER 6 : FUTURE SCOPE


CHAPTER 1: EXECUTIVE SUMMARY

• Internships are generally thought of to be reserved for college students looking to gain
experience in a particular field. However, a wide array of people can benefit from Training
Internships in order to receive real world experience and develop their skills.
• Utilizing internships is a great way to build your resume and develop skills that can be
emphasized in your resume for future jobs.
• In the Internship period the learning objectives are to get well trained in the topics, apply
them practically, Development, Research, Team work, Leadership qualities and technical
exposure.
• The achieved outcomes are same as the learning objectives whereas team work qualities,
technical skills, Application development and research on the topic has been achieved.

The organization has been into software development and the same has been trained to the students
with the application development using web technologies like HTML, CSS and Java Script and
provides advanced data science using the technologies like Python, Power BI, Tableau, SQL . Interns
has undergone the training for 6 weeks and has built the web application for 3 weeks and the next 3
weeks learn about python, numpy module and backend data management.
CHAPTER 2: OVERVIEW OF THE ORGANIZATION

Vision

Our partners feel proud when their tech support is used in innovative applications and in the
betterment of people round the corner.

Mission

Creating values to our partners and clients is our motto. They believe in transforming lives through
easy and affordable solutions.

Why EXCELR?

EXCELR is considered to be one of the best training institutes across the globe owing to their faculty,
post training support and state of the art curriculum.

Quality of Work - The work they do for their clients is excellent in their terms of quality. Provided
they are scalable, secure, reliable, optimized and remarkable in performance.

Technical Expertise - They carry out conventional knowledge in the technical aspects. This helps
them chatter their client’s needs with superior results.

Service and support - In a world run by the internet, they are just a click away. As for the company,
client’s satisfaction is the number one priority.
CHAPTER 3: INTERNSHIP PART

Description of the Activities/Responsibilities in the Intern Organization during Internship, which shall
include - details of working conditions, weekly work schedule, equipment used, and tasks performed.
This part could end by reflecting on what kind of skills the intern acquired.

Internship program Involves training and project phases. Once we get enrolled into the Internship
program we will be trained on web technologies like HTML, CSS, Java script, Python and SQL. Training
sessions are held for knowledge transfer. Regular training period of 3 weeks will be taking place.
During the training period we will be trained on the certain topics and technologies which are
required for the application development. We are given tasks and activities on a daily basis to
achieve. We are given a portal of LMS where we have to submit all our tasks and assignments there.
After being trained on the complete topic we have been divided into teams randomly. From a team
we have to select a team lead and take up a project. The hosting and domain of a project is given to
each batch to build a project of web application. Intern have to work on the project given along with
the assigned team members. Every team has to build a web application on a sustainable
development goal and submit to the organization. Team will be having deadline targets for every
week. During the Internship period we used laptops/ Desktops provided by the organization and
College.

This report is a description of my 6 weeks PYTHON FULL STACK internship carried out as a
compulsory component of the course. In the following chapter details of tools and technology used
and an overview is given. Afterwards, I explain my role and tasks as a trainee and give specific
technical details about my main tasks. Finally, a conclusion is drawn from the experience.

The objective of web development is to handle the entire design of a website. The software keeps
track of all the information about the entire website. The system contains a database where all the
information will be stored safely.

To gain skills and knowledge

This internship provided us with essential skills and knowledge one requires in the field of web
designing. The crucial tools used during the tenure helped us in gaining knowledge about
programming languages.

To get field work experience

By taking this training we enhanced our knowledge in Web designing and got insight in how the
websites are designed using HTML and CSS and provide the liveliness to webpage by using Javascript.

To enhance our communication skills

By interacting with my trainee and classmates I got to learn a lot. It helped me to enhance my
communication skills and represent my work with confidence. It boosted my confidence to design
more web pages and create some great designs for my understanding of concepts.
To link theory with practice

First we learned the theory aspect and then we put that into practice. By doing the practical work,
our concept got clear and it was easy to code into HTML once we got familiar with it. By putting our
theoretical knowledge into practical, coding became more fun.

To build a network

By learning how to code in HTML and CSS it is easy to build and design our own websites with all the
changes we want. We also got to know about how websites are designed initially and the logic
behind that.

Platforms and Technology Used

Various Platforms like Visual Studio Code ,Anaconda Navigator, MySQL and technologies like HTML,
CSS, JavaScript, Python and SQL used during our internship training.
CHAPTER 4: WEEKLY ACTIVITY LOG

WEEK 1 : ACTIVITY LOG FOR THE FIRST WEEK


Day 1 : HTML Introduction , Basic HTML Syntax

Day 2 : Installation of VS Code , Introduction to Basic tags

Day 3 : DOM, Tags in HTML

Day 4 : Creating tables, Learning about SEO

Day 5 : HTML Forms, Form Attributes & Elements

Day 6 : Input Types & Form Attributes

Learning outcome:

Day 1 : Understanding HTML .

Day 2 : Using a proper code editor ,Using tags to create well structure page.

Day 3 : Adding few more tags to structure the page.

Day 4 : Creating tables, Understanding SEO.

Day 5 : understanding HTML Forms, attributes and Elements.

Day 6 : Understanding input types and attributes ,Adding input form attributes to the Forms.

Objectives:

To understand HTML, its usage, and the importance of it in building a website. Starting to use VS
Code in the devices and Implementing from basics like building the boiler plate of the HTML,
Understanding Tags and the usage of them in various situations on getting perfect website outcome.

DETAILED REPORT:

The first week is more about learning and understanding the basics of the HTML and the subject web
development. I will be listing down the topics learnt, practiced and worked on HTML stands for
Hypertext Mark-up Language. It is used to design web pages using mark-up language. HTML is the
combination of Hypertext and Mark-up language. Hypertext defines the link between the web pages.
Markup language is used to define the text document within a tag which defines the structure of
web pages. HTML5 is the fifth and current version of HTML. It has improved the mark-up available for
documents and has introduced Document Object Model (DOM).
Installation of Visual Studio Code:

Here's a simple step-by-step guide to install Visual Studio Code (VS Code):

Step 1: Download Visual Studio Code

1. Go to the Visual Studio Code download page.

2. Choose the correct installer for your operating system:

• Windows (.exe file)

• Mac (.dmg file)

• Linux (.deb or .rpm file)

Step 2: Install VS Code

For Windows

1. Open the downloaded .exe file.

2. Follow the installation prompts:

• Accept the license agreement.

• Choose the installation folder (or leave it at the default).

• Optionally, check the box to "Add to PATH" to easily access VS Code from the
command line.

3. Click Install and wait for the installation to complete.

4. Once done, you can launch VS Code by clicking Finish and selecting "Launch Visual Studio
Code."

For Mac

1. Open the downloaded .dmg file.

2. Drag the Visual Studio Code icon into the Applications folder.

3. You can now open VS Code from your Applications folder or by searching for it in Spotlight.

Step 3: Launch Visual Studio Code

• Open VS Code by double-clicking the icon or using the command line (code).

• You may be prompted to sign in to sync settings (optional).

Step 4: Install Extensions (Optional but Recommended)

• Open the Extensions sidebar in VS Code (click the square icon or press Ctrl+Shift+X).

• Search for popular extensions like Python, JavaScript, or HTML/CSS for added functionality.
Below example illustrate the HTML5 content:

<!DOCTYPE html>

<html>

<head>

<title> Page Title </title>

</head>

<body>

<h1>This is Heading Tag</h1>

<p>This is a paragraph</p>

<form>

<label for="fname">First name :< /label><br>

<input type="text" id="fname" name="fname"><br>

<label for="Iname">Last name :< /label><br>

<input type="text" id="lname" name="lname"><br><br>

<input type="submit" value="Submit">

</form>

</body>

</html>
WEEK 2: ACTIVITY LOG FOR THE SECOND WEEK

Day 1 : HTML Media, HTML APIs

Day 2 : CSS Introduction, Usage and Importance

Day 3 : BG ,Text colors , CSS Selectors and properties

Day 4 : CSS Syntax and structure, Alignment of elements

Day 5 : CSS Box Model, CSS Fonts and Icons

Day 6 : Tables and Display, Overflow and Float

Learning outcome:

Day 1 : Understanding Media Attributes, Understanding APIs.

Day 2 : Understanding CSS, Basic CSS Usage.

Day 3 : Adding Internal and External colors, Learning and implementing CSS Properties and selectors.

Day 4 : Using CSS Syntax and inline CSS, Alignment of proper elements.

Day 5 : Understanding CSS Box Model, Basic CSS Usage Fonts and Icons.

Day 6 : Adding CSS to the Tables, Learning and implementing CSS Overflow and Float.

Objectives :

To understand the Forms and their importance in the webpages. Usage of forms according to the
situations. Implementation of Basic form of Media tags and in-building those tags for media in the
Webpages. Usage of application programming interfaces (API). Styling the web application and
building is the main objective in the Third week which included css, styling, alignment, fonts, text and
making the web application beautiful as much as possible. In This Week we learned about some
advanced topic of CSS like Box Model , Icons , Tables , Overflow and Float ,

DETAILED REPORT:

The second week is more about learning and understanding the forms of HTML and hoe to use them
in the subject web development. I will be listing down the topics learnt, practiced and worked on.
The forms in the HTML are mainly used for the development of the webpages used for the
information gathering and for some login related forms like Instagram and facebook login pages The
media tags are used for inbuilting the media contents within a webpages and the HTML5 is the fifth
and current version of HTML. It has improved the mark-up available for documents and has
introduced Application Programming Interfaces (API). Cascading Style Sheets, fondly referred to as
CSS, is a simply designed language intended to simplify the process of making web pages
presentable. CSS allows you to apply styles to web pages. More importantly, CSS enables you to do
this independent of the HTML that makes up each web page.
There are three types of CSS which are given below:
• Inline CSS
• Internal or Embedded
• CSS External CSS
BOX MODEL:

The CSS Box Model is a fundamental concept that defines how elements are structured and spaced
on a webpage. Every element in a webpage is essentially a rectangular box, and the box model
explains how the total size of this box is calculated.

Here's a breakdown of the CSS Box Model structure:

1. Content

The content area is where the actual content (like text, images, or other media) is displayed. This
area’s size can be controlled using the width and height properties.

2. Padding

Padding is the space between the content and the border of the box. It creates an inner margin
inside the box, pushing the content away from the edges. Padding increases the size of the element
without adding an external gap. You can set it using properties like padding, padding-top, padding-
right, padding-bottom, and padding-left.

3. Border

The border surrounds the padding and content. It adds a line or frame around the box, which can be
styled in terms of color, thickness, and type (e.g., solid, dashed, dotted). You can adjust it with
properties like border, border-width, border-style, and border-color.

4. Margin

Margin is the space outside the border. It creates space between elements, pushing the boxes away
from each other. Like padding, you can set it on each side with margin, margin-top, margin-right,
margin-bottom, and margin-left.

Box Sizing Property

By default, the width and height of an element only apply to the content area, not including padding
or border. However, using the box-sizing property, you can change how the browser calculates the
total width and height of an element.

For example:

/* Makes width and height include padding and border */

box-sizing: border-box;

Example 1:

Here's an example to help understand how the box model affects layout:

.box {

width: 200px; /* Content width */

height: 100px; /* Content height */

padding: 20px; /* Space inside the box */


border: 5px solid #000; /* Border thickness */

margin: 10px; /* Space outside the box */

box-sizing: border-box; /* Includes padding and border in width and height */

In the above example, if box-sizing is border-box, the box will be exactly 200px wide and 100px high
(including padding and border). If box-sizing is not set to border-box, the total width and height will
be increased by padding and border.

Example 2:

Below example illustrate the basic CSS3 content:

<!DOCTYPE html>

<html>

<head>

<title> HTML 5 Demo With Styles</title>

<style>

body{

font-size :20px;

font-weight :bold;

text-align : center;

</style>

</head>

<body>

<div> Hello world!</div><br>

<aside> This is aside tag </aside>

</body>

</html>
WEEK 3 : ACTIVITY LOG FOR THE THIRD WEEK

Day 1 : Opacity and Navigation Bar, Forms and Counters

Day 2 : JavaScript Introduction, Data types, Variables, Operators

Day 3 : JavaScript Statement, Functions, Objects

Day 4 : No coding tool Introduction and its Importance, Sustainable development goals

DAY 5 : Brainstorming on Ideas, Design Thinking

Day 6 : Website working process, Canva

Learning outcome:

Day 1 : Learning and implementing CSS Opacity and Navigation Bar, Using CSS for Forms and Applying

Counters.

Day 2 : Understanding Java script, Learnt to Create variables and data types, Worked on bitwise,

comparison and few operators.

Day 3 : Loop statements and condition statements, Creating and calling function and arrow function,

What is object, types of object and global objects.

Day 4 : Implementing non coding tools, Understanding SDGs.

DAY 5 : Working on Ideas of web applications, Exploring Innovative Ideas.

Day 6 : Coming to know how a website works, Designing Images, logos and infographic for website.

OBJECTIVES:

Styling the web application and building is the main objective in the Fourth week which included css,
styling, alignment, fonts, text and making the web application beautiful as much as possible. We can
create a behaviour to a website and make it responsive which is an important aspect in web
development to web development and add functionalities to it. Understanding the importance of no
coding tools, learning SDGs, Working on the Ideas of web application and designing the images,
videos , logos and other infographics using canva for application

DETAILED REPORT:

The Third week is more about learning and understanding the CSS and the subject web
development. I will be listing down the topics learnt, practiced and worked on Implementing the
Navigation Bars for more advanced implementation of webpages . Understanding the basics of Java
Script and the subject web development. I will be listing down the topics learnt, practiced and
worked on JavaScript is a lightweight, cross-platform and interpreted scripting language. It is well-
known for the development of web pages, many non-browser environments also use it. JavaScript
can be used for Client-side developments as well as Server-side developments. no coding tools used
in the web development. I will be listing down the topics learnt, practiced and worked on No-code
development fundamentally shifts how enterprises build applications, allowing users to construct
complex workflows without writing a single line of code. It’s a customizable, secure, and cost-
effective solution that’s driven by ideas, not technical expertise.

Features of JavaScript:

According to a recent survey conducted by Stack Overflow, JavaScript is the most popular language
on earth. With advances in browser technology and JavaScript having moved into the server with
Node.js and other frameworks, JavaScript is capable of so much more. Functions in JS are objects.
They may have properties and methods just like another object. They can be passed as arguments in
other functions. Can handle date and time. Performs Form Validation although the forms are created
using HTML. No compiler needed.

Features of Canva and No coding tools:

We, students can create and personalize your own designs from scratch, or choose from thousands
of high-quality, copyright-free educational templates. From presentations to posters, and
infographics, to worksheets, project-based learning, and lesson plans, the possibilities are endless.

No-code development fundamentally shifts how enterprises build applications, allowing


users to construct complex workflows without writing a single line of code. It’s a customizable,
secure, and cost-effective solution that’s driven by ideas, not technical expertise. Here are the top
five benefits of using no-code platforms in enterprises.

1. SPEED: Decrease time to market

2. Collaboration: Bridge Communication Gaps

3. Accessibility: Break Down Structural Barriers

4. Flexibility: Build on Your Own Terms

5. Cost Savings: Reduce Legacy Maintenance

CANVAS:

The <canvas> element in web development is a powerful HTML element used to draw graphics on a
web page. It's widely used for creating animations, games, data visualizations, and custom image
manipulation directly in the browser.

Here's a simple breakdown of how the <canvas> element works and how it's used:

1. What is the <canvas> Element?

• <canvas> is an HTML5 element that acts as a blank drawing area.

• By itself, <canvas> doesn't render anything visible; it's simply a container.

• You control what’s drawn on it using JavaScript, which provides a set of methods to draw
shapes, lines, text, and images on the canvas.

2. Setting Up a Canvas

The <canvas> element has only two main HTML attributes: width and height, which define the size of
the drawing area in pixels.
<canvas id="myCanvas" width="400" height="300">

Your browser does not support the HTML5 canvas tag.

</canvas>

If the browser doesn't support <canvas>, the text inside the element will display instead.

3. Accessing the Canvas with JavaScript

To draw on the <canvas>, you need to access it through JavaScript:

1. Use getElementById to access the <canvas> element.

2. Get the "context," which provides drawing methods and tools. The most common context is
"2D."

const canvas = document.getElementById("myCanvas");

const context = canvas.getContext("2d"); // 2D rendering context

4. Basic Drawing on Canvas

With the 2D context, you can draw various shapes and lines:

Draw a Rectangle

context.fillStyle = "blue"; // Fill color

context.fillRect(50, 50, 100, 100); // x, y, width, height

Draw a Circle

context.beginPath();

context.arc(150, 150, 50, 0, 2 * Math.PI); // x, y, radius, start angle, end angle

context.fillStyle = "red";

context.fill();

Draw Text

context.font = "20px Arial";

context.fillStyle = "green";

context.fillText("Hello Canvas!", 200, 50); // text, x, y

Draw a Line

context.beginPath();

context.moveTo(0, 0); // Starting point

context.lineTo(200, 100); // Ending point

context.strokeStyle = "black";
context.lineWidth = 2;

context.stroke();

5. Advanced Use Cases

• Animation: By clearing the canvas and redrawing elements in slightly different positions, you
can create animations.

• Game Development: Many simple browser games use <canvas> for rendering graphics.

• Data Visualization: Libraries like Chart.js and D3.js use canvas to render charts and visual
data representations.

• Image Manipulation: You can load images into the canvas and modify them (like applying
filters or cropping).

Example: Basic Animation

let x = 0;

function animate() {

context.clearRect(0, 0, canvas.width, canvas.height); // Clear the canvas

context.fillStyle = "blue";

context.fillRect(x, 50, 100, 100); // Draw moving rectangle

x += 1;

requestAnimationFrame(animate); // Recursively call animate

animate();

6. Important Considerations

• Performance: Since the <canvas> operates with pixels, it’s faster and more flexible than
traditional HTML elements for graphics-intensive tasks.

• Resolution: Set the canvas width and height in HTML rather than CSS, as CSS scaling can
make graphics blurry.

• Fallback Content: Provide fallback text inside the <canvas> tag for users with unsupported
browsers.
WEEK 4: ACTIVITY LOG FOR THE FOURTH WEEK

Day 1 : Introduction to Python, Anaconda Navigator installation

Day 2 : Variables, Datatypes

Day 3 : Operators, Strings

Day 4 : Conditional, Iterative statements

Day 5 : Lists, Sets, Tuples, Dictionaries

Day 6 : Functions, File Operations

Learning outcome:

Day 1 : Introduction to python , features, Applications and installing of Anaconda navigator platform.

Day 2 : How the data is stored in variables and the types of data stored by using datatypes.

Day 3 : What are the operators ,uses, practical exposure and know about the strings.

Day 4 : Learning of conditional and looping statements.

Day 5 : Gain a brief knowledge on Lists, Sets, Tuples, Dictionaries.

Day 6 : Learning of functions , calling functions and file operations like Read, Write ..

Objectives :

The objective for fourth Week is to provide us with a foundational understanding of Python
programming. This includes installing Anaconda Navigator, exploring variables and datatypes, using
operators and strings, implementing conditional and iterative statements, and understanding data
structures like lists, sets, tuples, and dictionaries.

DETAILED REPORT:

In Week 4, I focused on building a strong foundation in Python programming, starting with an


introduction to the language and installing Anaconda Navigator. Through the week, I learned how
data is stored in variables and the different data types Python uses to represent information. I
explored operators to understand how Python handles arithmetic, comparison, and logical
operations, along with working with strings for text manipulation. Moving on, I studied conditional
statements (like if statements) and loops, which allowed me to create more dynamic and responsive
programs. A significant part of the week was dedicated to understanding Python's key data
structures: lists, sets, tuples, and dictionaries. These tools help in storing and organizing data
efficiently, each with its own unique properties and use cases. Toward the end of the week, I delved
into functions, which are essential for organizing and reusing code, and learned about basic file
operations, like reading from and writing to files. Overall, this week provided me with essential
Python skills and a deeper understanding of how to build structured and versatile programs.
Features of Python:

1. Ease of Installation and Setup: Installing Python via Anaconda Navigator simplifies the
process and provides an integrated environment for programming.

2. Variables and Data Types: Python supports various data types (e.g., integers, floats, strings,
booleans) and allows easy storage and manipulation of data in variables.

3. Operators: Python has a comprehensive set of operators for arithmetic, logical, and
comparison tasks, making it versatile for mathematical and logical operations.

4. String Handling: Python offers extensive support for string manipulation, making it easy to
work with text data.

5. Control Flow with Conditionals and Loops: Python supports if, else, elif, and loops (for,
while), allowing developers to control the flow of the program based on conditions and
repetition.

6. Data Structures: Python has built-in data structures like lists, sets, tuples, and dictionaries.
These are highly flexible and efficient, suited for storing various data forms and managing
collections.

7. Functions: Python allows users to create functions, enabling modular, reusable, and
organized code. Functions help encapsulate code blocks and improve code readability.

8. File Operations: Python makes it straightforward to handle files, including reading from and
writing to files, which is essential for tasks that involve data storage and retrieval.

These features make Python powerful, flexible, and suitable for beginners and experienced
programmers, enabling rapid development and problem-solving.

Data Structures in Python:

In Python, data structures are essential for organizing, storing, and managing data efficiently. Here’s
an overview of some of the key data structures in Python:

1. Lists

• Description: An ordered, mutable (modifiable) collection of items.

• Syntax: list_name = [item1, item2, item3]

• Use Cases: When you need to store a sequence of items that may change over time.

• Example:

fruits = ["apple", "banana", "cherry"]

fruits.append("orange") # Add an item

fruits[1] = "blueberry" # Modify an item


2. Tuples

• Description: An ordered, immutable (cannot be modified) collection.

• Syntax: tuple_name = (item1, item2, item3)

• Use Cases: When you need a collection of items that should not change throughout the
program.

• Example:

coordinates = (10, 20, 30)

# coordinates[1] = 25 # This would raise an error because tuples are immutable

3. Sets

• Description: An unordered, mutable collection with no duplicate items.

• Syntax: set_name = {item1, item2, item3}

• Use Cases: When you need a collection of unique items.

• Example:

colors = {"red", "green", "blue"}

colors.add("yellow") # Adds an item

colors.add("red") # No effect, as "red" is already in the set

4. Dictionaries

• Description: An unordered collection of key-value pairs, where each key is unique.

• Syntax: dict_name = {key1: value1, key2: value2}

• Use Cases: When you need to map unique keys to values for fast lookup.

• Example:

person = {"name": "John", "age": 30, "city": "New York"}

person["age"] = 31 # Update the value associated with the key "age"

5. Strings (Technically a sequence type)

• Description: A sequence of characters, immutable.

• Syntax: string_name = "text"

• Use Cases: Representing textual data.

• Example:

greeting = "Hello, world!"

greeting[7] # Accessing character 'w'


Key Operations Across Data Structures

• Accessing Elements: Use indexes for lists, tuples, and strings; use keys for dictionaries.

• Adding/Removing Elements: Use append() for lists, add() for sets, and update() for
dictionaries.

• Checking Membership: Use in to check if an element exists (e.g., item in list, key in
dictionary).

• Iterating: Use loops (e.g., for item in list) to iterate over elements in lists, tuples, sets, and
dictionaries.

Choosing the Right Data Structure

• Lists: If order and mutability are essential.

• Tuples: If the data should remain constant.

• Sets: If uniqueness and membership testing are crucial.

• Dictionaries: For fast access using unique keys.


WEEK 5: ACTIVITY LOG FOR THE FIFTH WEEK

Day 1 : Exception Handling

Day 2 : OOPS

Day 3 : Regex, Numpy

Day 4 : Django Framework

Day 5 : MVT, Views Template filters

Day 6 : Introduction to SQL, MySQL workbench installation

Learning outcome:

Day 1 : In this we learn how to handle unexpected errors, throwing of errors.

Day 2 : Learn about class, objects, polymorphism, encapsulation, abstraction, inheritance.

Day 3 : How to add regular expressions and brief knowledge on Numerical python (Numpy).

Day 4 : Learning of Django framework.

Day 5 : Gaining knowledge on mvt and template filters.

Day 6 : Introduction to database by using SQL, installing and setup of MySQL workbench.

Objectives :

The objective for fifth Week was to equip us with fundamental programming skills and knowledge in
web development and database management. This included understanding exception handling,
object-oriented programming, regular expressions, and the Django framework, as well as gaining
familiarity with SQL and MySQL Workbench. By the end of the week, we aimed to have a solid
foundation to build upon for more advanced topics in programming and web development.

DETAILED REPORT:

In Week 5, you focused on strengthening your programming, web development, and database
management skills. You began by learning how to handle unexpected errors through exception
handling, which is essential for writing robust code. Next, you delved into object-oriented
programming (OOP), covering key concepts like classes, objects, inheritance, and encapsulation. You
then explored regular expressions, a powerful tool for pattern matching, and got an introduction to
Numpy, a library essential for numerical computing in Python. The week continued with a deep dive
into the Django framework, where you explored the MVT (Model-View-Template) architecture and
learned to use template filters. Finally, you got introduced to databases through SQL and installed
MySQL Workbench to start working with structured data. Overall, this week gave you a solid
foundation for building more advanced web applications and understanding data management.
MVT and Views:

In Django (a Python web framework), MVT stands for Model-View-Template, a design pattern that
helps structure the code for building web applications. Each component in MVT has a specific role:

1. Model: The model is responsible for handling data and representing the application's
database structure. It defines the structure of stored data, manages the relationship
between data points, and provides methods to interact with data (like adding, deleting, or
retrieving records). In Django, models are defined as classes and map directly to database
tables.

2. View: The view serves as the "middleman" between the model and the template. It’s where
the main logic of the application occurs. Views take input from the user (often through URLs
or form submissions), query the database as needed, and then pass data to templates to
render the output for users. In Django, views are written as functions or classes and are often
linked to specific URLs.

3. Template: The template is the front-end of the application—the HTML file that displays data
to the user. Templates handle how information is presented, with placeholders for dynamic
content that the view sends.

Together, MVT allows for a clean separation of data (Model), user interface (Template), and
application logic (View), making the application modular and easier to maintain.

Installation of MySQL Workbench:

Here’s a step-by-step guide to installing MySQL Workbench:

1. Download MySQL Workbench

• Go to the MySQL Workbench download page.

• Select your operating system (Windows, macOS, or Linux).

• Click Download and, on the download page, choose "No thanks, just start my download" if
you don’t want to sign up for an account.

2. Run the Installer (Windows and macOS)

• Locate the downloaded file and open it to start the installation.

• For Windows, you may need to run the installer as an administrator.

3. Install MySQL Workbench (Windows and macOS)

• Follow the on-screen instructions.

• Select Standard or Custom Installation based on your preferences.

• Review and confirm the installation settings, then click Install.

• MySQL Workbench will be installed, and a shortcut will be added to your desktop or
applications folder.
4. Launch MySQL Workbench

• Open MySQL Workbench from your applications menu or by double-clicking the desktop
icon.

• You’ll be greeted by the welcome screen, where you can configure your connections to
MySQL servers.

5. Connect to a MySQL Server (Optional)

• Click on + next to MySQL Connections to add a new server connection.

• Enter the connection details, including hostname (e.g., localhost for local server), port
(default is 3306), username, and password.

• Test the connection to ensure everything is working, then save it.

After completing these steps, MySQL Workbench should be ready to use! You can now create and
manage databases, execute SQL queries, and work with your MySQL server.
WEEK 6: ACTIVITY LOG FOR THE SIXTH WEEK

Day 1 : SQL Queries

Day 2 : SQL commands

Day 3 : Sorting and Aggregating Data

Day 4 : Joins and Relationships

Day 5 : Views and Constraints

Day 6 : Functions and Transactions

Learning outcome:

Day 1 : Gained familiarity with basic SQL queries and syntax, including how to retrieve data.

Day 2 : Learned key SQL commands like DDL, DML, TCL and DCL for managing database structure

and modifying data.

Day 3 : Practiced sorting results with ORDER BY and using aggregate functions to analyze data.

Day 4 : Understood relationships between tables and practiced using different types of joins to

retrieve data from multiple tables.

Day 5 : Learned to create and use VIEW for storing complex queries and simplifying data access.

Day 6 : Explored SQL functions like NOW(), ROUND(), and CONCAT() for performing operations on

data.

Objectives :

The objective for sixth Week is to deepen SQL skills by mastering core querying techniques,
command execution, and data manipulation. Through activities covering sorting, aggregations, joins,
views, constraints, functions, and transactions, we will develop the ability to create, manage, and
optimize relational databases efficiently for complex data tasks and analyses.

DETAILED REPORT:

In Week 6, you focused on building a deeper understanding of SQL, mastering various querying
techniques and database management concepts. You started by learning basic SQL queries,
practicing how to retrieve and manage data, which laid the groundwork for working with databases.
Progressing to SQL commands, you learned how to modify both the structure and content of
databases using DDL, DML, TCL, and DCL commands. You then moved on to sorting and aggregating
data, using SQL functions to analyze and organize data effectively. Later, you explored joins to
connect related tables, learning how to retrieve combined data from multiple tables. Towards the
end of the week, you created and managed views, which help simplify data access and store complex
queries, and learned about constraints to maintain data integrity. You concluded the week with SQL
functions and transactions, understanding how to apply built-in functions and manage transactions
to handle multiple operations effectively. This week provided you with a solid grasp of relational
database management, enhancing your skills to manage, analyze, and optimize data efficiently.

Joins and Relationships:

Joins

Joins allow you to combine rows from different tables in a database. The most common types of joins
are:

1. INNER JOIN: This join returns only the rows that have matching values in both tables. For
example, if you have a table of customers and a table of orders, an inner join would give you
only the customers who have placed orders.

2. LEFT JOIN (or LEFT OUTER JOIN): This join returns all rows from the left table and the
matched rows from the right table. If there is no match, it shows NULL for the right table's
columns. For instance, if you want to see all customers and their orders (even those who
haven’t placed any), you would use a left join.

3. RIGHT JOIN (or RIGHT OUTER JOIN): This is the opposite of a left join. It returns all rows from
the right table and the matched rows from the left table. If there’s no match, it shows NULL
for the left table's columns.

4. FULL OUTER JOIN: This join returns all rows when there is a match in either left or right table
records. It shows NULL where there are no matches. This is useful when you want to see all
records from both tables, regardless of whether they are related.

Relationships

Relationships define how tables relate to each other. The main types are:

1. One-to-One: One record in a table relates to one record in another table. For example, each
user might have one profile.

2. One-to-Many: One record in a table can relate to multiple records in another table. For
example, a single customer can have multiple orders.

3. Many-to-Many: Records in one table can relate to multiple records in another table, and vice
versa. This often requires a third table (called a junction table) to establish the relationship.
For example, students and courses have a many-to-many relationship because one student
can enroll in many courses, and one course can have many students.
Views and Constraints:

Views in SQL: A view is like a virtual table in a database. It doesn't store data itself but displays data
stored in one or more tables. You can think of a view as a saved query that you can use just like a
regular table. When you query a view, it shows you the results based on the data in the underlying
tables. Views can make complex queries easier to manage, and they can also help with security by
limiting what data users can see.

Constraints in SQL: Constraints are rules that you set on the columns of a table to ensure the
accuracy and integrity of the data. They help maintain the quality of the data you enter into the
database. Here are some common types of constraints:

• Primary Key: This uniquely identifies each record in a table. No two rows can have the same
primary key value, and it cannot be empty.

• Foreign Key: This creates a link between two tables. It ensures that the value in one table
matches a value in another table, maintaining referential integrity.

• Unique: This ensures that all values in a column are different from each other, meaning no
duplicate values are allowed.

• Check: This enforces specific rules on the values in a column. For example, you can set a
check constraint to ensure that a column only contains values greater than zero.

Functions and Transactions:

Functions in SQL are pre-defined operations that you can use to perform specific tasks on your data.
They can help you manipulate or analyze data in various ways. For example:

• Aggregate Functions: These functions perform calculations on a set of values and return a
single value. Common aggregate functions include:

• SUM(): Adds up all the values in a column.


• COUNT(): Counts the number of rows that match a specific condition.
• AVG(): Calculates the average of a numeric column.

• String Functions: These functions operate on string data. For example:

• UPPER(): Converts a string to uppercase.

• LOWER(): Converts a string to lowercase.

• SUBSTRING(): Extracts a part of a string.

• Date Functions: These functions help you work with date values. For example:

• NOW(): Returns the current date and time.


• DATEPART(): Extracts a specific part (like year or month) from a date.

Transactions in SQL are a way to group multiple operations into a single unit. This is important for
maintaining data integrity, especially when you're making changes to the database. A transaction
ensures that either all changes are applied, or none at all, which helps prevent data corruption.
Here's how transactions work:

1. Begin a Transaction: You start by declaring that you are beginning a transaction using BEGIN
or START TRANSACTION.

2. Perform Operations: You can execute multiple SQL commands, like inserting, updating, or
deleting records.

3. Commit the Transaction: If all operations are successful and you want to save the changes,
you use COMMIT. This makes all the changes permanent.

4. Rollback the Transaction: If something goes wrong during any of the operations, you can use
ROLLBACK to undo all the changes made in that transaction, reverting the database to its
previous state.
CHAPTER 5: OUTCOMES DESCRIPTION
In conclusion, I can say that this internship was a great experience. Thanks to this project, I acquired
deeper knowledge concerning my technical skills, but I also personally benefited. Currently HTML
and javascript is a common part of web applications, and it is one of the most popular languages for
web designing used by professionals worldwide. If we surf the internet, we can see millions of
websites designed with HTML, CSS and javascript. I learned to live in a different environment from
the one I am used to. Indeed, I grew more independent in work and also in everyday life. I realized
that I could do more things than I thought, like learning new things by myself.

There are huge opportunities available for the students who want to work in this field. Many private
and public organizations hire web designers for their online work and website development. With
the rapid advent of the online industry, the demand of web development professionals is increasing,
and this has created a huge job opportunity for the aspirants in the upcoming days.

Also, an experienced person in this field can also work as a freelancer; there are many online
companies which provide online projects to the individuals.
CHAPTER 6: FUTURE SCOPE
If someone has no experience in this field, finding work can be a real challenge. A successful
internship can help an individual turn an experience into a career opportunity. So as a successful
internship some future scopes are:

• To work in IT company.
• Can work as a Software Engineer.
• Can work as a Web Designer.
• Can work as a Web Developer.
• Can work as a QA Tester.

Describe the real time technical skills you have acquired (in terms of the jobrelated skills and
hands on experience

HTML

HTML is at the core of every web page, regardless of the complexity of a site or number of
technologies involved. It's an essential skill for any web professional. It's the starting point for anyone
learning how to create content for the web. And, luckily for us, it's surprisingly easy to learn.

CSS

CSS stands for Cascading Style Sheets. This programming language dictates how the HTML elements
of a website should actually appear on the frontend of the page.

JAVA SCRIPT

JavaScript is a more complicated language than HTML or CSS, and it wasn't released in beta form
until 1995. Nowadays, JavaScript is supported by all modern web browsers and is used on almost
every site on the web for more powerful and complex functionality.

PYTHON

Python is a popular, easy-to-read programming language used for many different tasks. It's known for
its simple syntax, which makes it beginner-friendly, and it’s very versatile. Python is used in web
development, data analysis, machine learning, automation, game development, and more.

SQL

SQL, or Structured Query Language, is a language used to communicate with databases. Databases
store and organize information, and SQL helps you retrieve, add, update, or delete this information.
Describe the managerial skills you have acquired (in terms of planning, leadership, team work,
behavior, workmanship, productive use of time, weekly improvement in competencies, goal
setting, decision making, performance analysis, etc

Technical skills are important, because they set us, and our organization up for success. Fundamental
to this success, is a great LMS to deliver this essential training.

• Information processing
• Teamwork
• Planning/prioritizing
• Decision making/problem solving
• Verbal communication.

Describe how you could improve your communication skills (in terms of improvement in oral
communication, written communication, conversational abilities, confidence levels while
communicating, anxiety management, understanding others, getting understood by others,
extempore speech, ability to articulate the key points, closing the conversation, maintaining
niceties and protocols, greeting, thanking and appreciating others, etc.,)

Here are six practices which helped my communication more effectively in my internship:

1. Volunteering to give a presentation.


2. Asked to host a team meeting.
3. Seek feedback from our peers as well as our manager
4. Practice our small talk at informal times
5. Reach out to those in a similar situation
6. Keep on learning and practicing

Describe how you could enhance your abilities in group discussions, participation in teams,
contribution as a team member, leading a team/activity.

During my internship, I have an opportunity to develop my teamwork skills. I have trained to take
responsibility, expose my opinion, support and listen to other team members. The relationships we
make will be important to build our network and get future recommendations. When we work in a
team, we grow as an individual.

To be a team player the individual needs to feel part of the team, be genuinely involved in the team's
performance, demonstrate empathy, respect others opinions and differences, and be happy sharing
knowledge and helping colleagues. It's about building positive and healthy working relationships that
help everyone to achieve personal goals. Therefore, business outcomes depend on positive
relationships among the team members and their willingness to collaborate and support each other.

Describe the technological developments you have observed and relevant to the subject area of
training (focus on digital technologies relevant to your job role)

As our world becomes increasingly reliant on technology, we must look at every opportunity to
improve our software skills to become more capable future employees. Internships are an excellent
opportunity for all-round improvement. Apart from making my resume look good, they have so
much more to give. By learning to use software like PYTHON FULL STACK internship, you can deliver
more value at a future job.

• Project management skills including time management, goal setting, meeting deadlines,
setting priorities, multitasking .
• Team-focused individual who can both lead a team or be a contributing to a while also being
about to work independently team

You might also like