Samuel's IT REPORT
Samuel's IT REPORT
HELD AT
i
DECLARATION
I, IFEANYICHUWU CHIMDINDU SAMUEL with reg no 2020224129 hereby declare that this
SIWES report has been carried out by me under the supervision of MISS KOLAWOLE PRECIOUS
BISOLA, MR. OLALERE JOHNSON AND MR. MICHAEL UCHEOBI.
..................................................
SIGN / DATE
i
DEDICATION
I dedicate this report to the Glory of God for his immeasurable help, strength and wisdom he has
provided throughout my SIWES programme and to my parents MR. & MRS. IFEANYICHUKWU,
my family for their support during the programme.
i
ACKNOWLEDGEMENT
The compilation of this Report and the overall success of the SIWES program are made possible
due to the immense contributions of numerous people both in the field and outside the field; I
would like to thank all the staff members of Oluaka Institute of Technology Owerri and the
lecturers of the department of Computer Science, Chukwuemeka Odumegu Ojukwu University, for
their concern to my success. My sincere appreciation also goes to God for his immeasurable supply
during my SIWES program.
i
ABSTRACT
SIWES, Student’s Industrial Work Experience Scheme, was introduced by the Federal Government
as a means of exposing students in tertiary institutions to practical experiences obtainable in the
industries of their fields of study. It creates an enabling environment for interaction between the
students, their industry-based supervisors and other professionals in their respective fields; it is also
a means whereby students may observe practical applications of methods and/or processes which
they have studied theoretically.
This report details my work experience gathered during the course of my 6 months at Oluaka
Institute of Technology Owerri. In the course of my training, I had various responsibilities like
Facilitating Computer Appreciation and Graphic Design Courses, creating several course flyer
designs and also content creation, managing social media platforms, creating Google forms UI for
registrations, documenting important files and documents using Google Docs and Sheets, printing
and scanning of important documents or files, also going for marketing to various schools, barracks
and communities, I learnt development of Website (Frontend Web Development) using HTML,
CSS and JavaScript and worked on so many projects such as building a portfolio website, an health
center website, poultry website, an ecommerce website and most importantly Fuel Alert website
etc.
i
TABLE OF CONTENT
TITLE i
DECLARATION ii
DEDICATION iii
ACKNOWLEDGEMENT iv
ABSTRACT v
TABLE OF CONTENT vi
CHAPTER ONE 1
INTRODUCTION TO SIWES 1
OBJECTIVE OF SIWES 2
SIWES REGULATORY AGENCIES 2
The Federal Government 2
The Industrial Training Fund (ITF). 2
The Supervisory Agencies 3
BENEFITS OF INDUSTRIAL TRAINING TO STUDENTS 3
CHAPTER TWO 4
HISTORY OF OLUAKA INSTITUTE OF TECHNOLOGY OWERRI 4
OBJECTIVES OF OLUAKA INSTITUTE OF TECHNOLOGY OWERRI 4
ORGANOGRAM OF OLUAKA INSTITUTE OF TECHNOLOGY OWERRI 5
CHAPTER THREE 6
WEB DEVELOPMENT AND DESIGN 6
DEFINITION OF WEB DEVELOPMENT AND DESIGN 6
WEB SITES AND WEB PAGES 6
TYPES OF WEB PAGES 6
STEPS IN STATIC WEB PAGES PROCESS 6
STEPS IN DYNAMIC WEB PAGES PROCESS 7
WEB DESIGN TOOLS 7
FRONT END WEB DEVELOPMENT 8
THE BASICS OF FRONT END TOOLS AND TECHNOLOGY 8
HTML (HYPERTEXT MOCKUP LANGUAGE) 8
HTML TAGS, ELEMENTS AND ATTRIBUTES 8
i
CSS (CASCADING STYLE SHEETS) 9
CSS FRAMEWORKS 9
CSS SELECTOR 10-11
CSS PROPERTIES 11-12
CHAPTER FOUR 13
JAVASCRIPT 13
FUNCTION OF JAVASCRIPT 13
BROWSER DETECTION 13
JAVASCRIPT DEVELOPMENT TOOLS 13
JAVASCRIPT SYNTAX 14
COMMENTS IN JAVASCRIPT 14
HOW TO ENABLE JAVASCRIPT IN A BROWSER 14
JAVASCRIPT IN GOOGLE CHROME 14
DATATYPES IN JAVASCRIPT 15
JAVASCRIPT VARIABLES 15
VARIABLE NAMES 15
OPERATORS 16-17
SELECTION STATEMENTS 17-18
LOOP STATEMENTS 18-20
FUNCTIONS 20-21
CHAPTER FIVE 21
CONCLUSION 21
RELEVANCE OF THE INDUSTRIAL TRAINING TO THE TRAINEE’S COURSE OF STUDY
21
PROBLEMS AND CHALLENGES ENCOUNTERED DURING INDUSTRIAL TRAINING
21-22
SUGGESTION FOR IMPROVED SIWES PROGRAMME 22
i
CHAPTER ONE
It was established in 1973 by Nigerian graduates of tertiary institutions to solve the problems of
lack of adequate practical skills preparatory for employment in industries and also to help the ITF’s
enabling decree No. 47 of 8th of October, 1971, which aims at transforming the economy of the
nation from its total dependence on foreign expertise to a state of self-reliance through the training
and development of Nigerians that will be competent to perform the specialized skills required to
manage essential sectors of the national economy. However the Federal Government of Nigeria
finances the scheme and it is overseen and administered by the industrial training fund (ITF).
Chukwuemeka Odumegu Ojukwu University Uli engages her 300 level and 400 level students in
the scheme for the duration of six month in order to expose them to the current demands of their
respective professions. As a result, a training log book is given to each student to record the
activities of each working day clearly with sketches and diagrams where appropriate after which it
must be submitted to the industry based supervisor for comment and signature. This is designed to
assist the students to keep an accurate record of his/her training during SIWES and also to give a
brief presentation of the projects executed by the company to include observations, comment and
recommendations to both the company and the University on ways of marrying the two institutions
together to obtain the desired result.
i
1.2. OBJECTIVE OF SIWES
The Industrial training funds policy of 1973 which established SIWES outlined the objectives of the
scheme.
Prepare students for the work situation they are likely to meet after graduation.
Provide an avenue for students in the Nigerian Universities to acquire industrial skills and
experience in their course of study.
Make the transition from the university to the world of work easier, and thus enhance
students' contact for later job placements.
Enlist and strengthen employers’ involvement in the entire educational process of preparing
university graduates for employment in industry.
Provide students with an opportunity to apply their theoretical knowledge in real work
situations, thereby bridging the gap between university work and actual practices.
Expose students to work methods and techniques in handling equipment and machinery that
may not be available in the universities.
The SIWES regulatory agencies include the following The Federal Government, the Industrial
Training Fund (ITF), the Supervising Agency, National Universities Commission, and NUC,
Employers of labor and Institutions. Each of the agencies have distinct but intertwined roles to play
in the SIWES program. Some of these roles are:
i
C. The Supervisory Agencies
There are three recognized supervising agencies namely: The National Universities Commission,
National Board for Technical Education, and National Commission for Colleges of Education.
Their General Roles Are As Follows:
a. Develop, monitor and review job-specifications in collaboration with the institutions towards
the maintenance of national minimum academic standard for all programs approved for SIWES.
b. Research into the development of the programmes in line with advances in technological
development.
c. To ensure the establishment and accreditation of SIWES units in institutions under the
jurisdiction.
d. Direct for the appointment of full-time co-coordinators.
i
CHAPTER TWO
Oluaka Institute of Technology, was founded in 2017, by The Late Mr. Innocent Chukwuemeka
Chukwuma. Oluaka Institute of Technology is a social media enterprises with a mission to
attract, train and retain top talents on technological innovation. In October 2019, after having
trained more than 100 software developers, supported more than 300 start-ups and SME’s alike,
the Federal Government of Nigeria through the National Board for Technical Education (NBTE)
deemed it fit to approve the institute as an Innovation Enterprise Institute (IEI), to train students
towards the award for National Innovation Diploma in Computer Hardware Engineering,
Computer Software Engineering and Networking and System Security.
i
2.3. ORGANOGRAM OF OLUAKA INSTITUTE OF TECHNOLOGY
GOVERNING
BOARD
PRINCIPAL
OFFICERS
RECTOR
ENGLISH
LECTURER 1 LECTURER 1 LECTURER 1
LANGUAGE
i
CHAPTER THREE
Web development is the building, creating, and maintenance of websites. It is the work that
happens behind the scenes in order to develop a website and make it look great, work fast and
perform well with a seamless user experience. It includes aspects such as web design, web
publishing, web programming, and database management.
Web design is the skills and discipline of production and maintenance of websites which include
interface design, page coding, and hosting and search engine optimization.
Web developers do this by using a variety of coding languages. The languages they use depends
on the types of tasks they are preforming and the platforms on which they are working. Web
development skills are in high demand worldwide and well paid too – making development a
great career option. It is one of the easiest accessible higher paid fields as you do not need a
traditional university degree to become qualified.
The field of web development is generally broken down into front-end (the client side) and back-
end (the server side) and Dev. OP’s (development operations)
A website is not the same thing as a Web page. Though the two terms are often used
interchangeably, they should not be. So, what's the difference? To put it simply, a Web site is a
collection of web pages while a Web page is an individual HTML document which makes up the
World Wide Web.
3.2.1 TYPES OF WEB PAGES
Static Webpage: A static webpage also known as flat or stationary page is one that does not
change when a site visitor requests it. They show the same content each time they are
viewed.
i
Dynamic Webpage: Dynamic pages have contents that can change each time they are
accessed. It is modified by the server before it is sent to the requesting browser. These pages
are typically written in scripting languages.
Code
i
SECTIONS OF WEB DEVELOPMENT: FRONT END WEB
DEVELOPMENT
The front end also called “client-side” programming is what happens in the browser. It’s
everything the user sees and interacts with.
A front-end development takes care of layout, design and interactivity using HTML, CSS and
JavaScript. They take an idea from the drawing board and turn it into reality. What you see and
what you use, such as the visual aspect of the website, the drop-down menus and the text, are all
brought together by the front-end developer, who writes a series of programs to bind and structure
the elements, make them look good and add interactivity. These programs are run through a
browser.
HTML stands for Hyper Text Markup Language. It is the standard markup language for creating
Web pages. HTML is how every site on the web is organized, so it’s a big one you can’t live
without in front-end development.
In HTML it is the tags that are the markup. The special meaning these tags give is a description
of the structure of the document. For example, the opening paragraph tag says “This is the
beginning of a paragraph” and the closing tag says “This is the end of the paragraph.” Without the
i
markup, the words in the middle would just be another bit of text; it would not be clear that they
formed a paragraph. HTML consists of a series of elements that describes the structure of a Web
page. These elements tell the browser how to display the content. HTML elements label pieces
of content such as "this is a heading", "this is a paragraph", "this is a link", etc.
The html elements have attributes which describes the element. The attributes are added on the
opening tag and each has a name and value.
The name is the property you want to set and the value is what you want the value of the
property to be.
Example: the <font> element has size, face, and color as attributes with different values. The
values should be enclosed in double quotation marks.
TAGS DESCRIPTION
i
<table> Defines a table
CSS stands for Cascading Style Sheets. It is a language designed to specify the style, layout, and
appearance of various elements on webpages. CSS covers fonts, colors, margins, lines, height,
width, background images, advanced positions and many other things.
Cascading Style Sheets (CSS) is how developers add styling and effects to a website. Styles can
be added globally, then layered on without changing that fundamental styling that gets applied to
a whole site.
It allows one to adapt the presentation to different types of devices, such as large screens, small
screens, or printers. The separation of HTML from CSS makes it easier to maintain sites, share
style sheets across pages, and tailor pages to different environments.
Many front-end developers use a CSS preprocessor to make writing lots of lines of CSS even
faster.
In its simplest form, a CSS framework is a collection of CSS style sheets that are prepped and
ready to use. They’re tailored for use in common situations, like setting up navbars, and are often
expanded upon by other technologies such as SASS and JavaScript. Basically, all you need to do
is write up your HTML with the appropriate structure, classes, and IDs and you’re off to the races.
However, instead of that style sheet being specifically for the home page you’re working on, it’s
ready to accommodate a general “standard” of home page, having classes for things commonly
found on other home pages (i.e. navbar, footer, slider, hamburger menu, 3 column layout). This
allows you to quickly setup web pages without having to deep dive into some CSS, saving a
bunch of time.
i
3.5.5 CSS SELECTORS
1. Simple selectors:
Type selector: Selects all elements that match the given node name.
Syntax: element-name {…….}
Example: input will match any <input> element, input {…….}
Class selector: Selects all elements that have the given class attribute.
Syntax: .classname {………}
Example: .index will match any element that has a class of "index", .classname {………}
ID selector: Selects an element based on the value of its id attribute. There should be only
one element with a given ID in a document.
Syntax: #idname
Example: #toc will match the element that has the ID "toc", #toc {……}
Attribute selector: Selects elements based on the value of the given attribute.
Syntax: [attr] [attr=value] [attr~=value] [attr|=value] [attr^=value] [attr$=value]
[attr*=value]
Example: [autoplay] will match all elements that have the autoplay attribute set (to any
value) /* <a> elements with a title attribute */
a [title] {
Color: purple;
}
2. Combinators:
Adjacent sibling combinator : The + combinator selects adjacent siblings. This means that
the second element directly follows the first, and both share the same parent.
Syntax:A+B
Example: h2 + p will match all <p> elements that directly follow an <h2>.
/* Paragraphs that come immediately after any image */
img + p {
Font-style: bold;
}
i
General sibling combinator : The general sibling combinator selects siblings. This means
that the second element follows the first (though not necessarily immediately), and both
share the same parent. It is denoted by” ~”.
Syntax:A~B
Example: p ~ span will match all <span> elements that follow a <p>.
/* Paragraphs that are siblings of and subsequent to any image */
img ~ p {
Color: red;
}
Child combinator: The child combinator selects nodes that are direct children of the first
element. It is denoted by” >”.
Syntax: A > B
Example: ul > li will match all <li> elements that are nested directly inside a <ul> element.
/* List items that are children of the "my-things" list */
Ul.my-things>li {
Margin: 2px;
}
Descendant combinator: This combinator selects nodes that are descendants of the first
element. It id denoted by a space “”.
Syntax: A B
Example: div span will match all <span> elements that are inside a <div> element.
/* List items that are descendants of the "my-things" list */
Ul.my-things li {
Margin: 2px;
}
i
3.5.6 CSS PROPERTIES
CSS properties are used to apply styles to structured document, such as those created with
HTML or XML.
CSS properties are specified in the CSS standard. Each property has a set of possible values.
Some properties can affect any type of element and others apply only to particular groups of
elements.
CSS properties are used within a declaration block with a corresponding value.
CSS properties can be generally classified into four groups:
1. Text properties.
2. List properties.
3. Font properties.
4. Border properties.
TEXT PROPERTIES
color Sets the color of a text RGB, hex, keyword
text align Aligns the text in an element left, right, center, justify
LIST PROPERTIES
list-style Sets all the properties for a list in one list-style-type, list-style-
declaration position, list-style-image, inherit
list-style-type Specifies the type of list-item marker none, disc, circle, square,
decimal, decimal-leading-zero
list-style-image Specifies an image as the list-item URL, none, inherit
marker
i
BORDER PROPERTIES
CHAPTER FOUR
i
4.1 JAVASCRIPT
JavaScript is a dynamic computer language. It is lightweight and most commonly used as a part
of web page, whose implementation allows client side script to interact with the user and make
dynamic pages. It is an interpreted programming language with object oriented capabilities. It
was developed by Brenan Eich 1995-1996, it is an implementation of ECMA Script (European
Computer Manufacturers Association). It was also known as livescript later change to javascript.
It is use for client side web form validation. Javascript cannot run with been embedded in the
HTML.
This refers to a feature of a web browser to execute a javascript code without any error
irrespective of its version.
One of the major strength of is that it does not require expensive development tools. One can
begin with a simple text editor such as notepad or notepad++. Since it is an interpreted language
inside the content of the web browser, you do not even need to buy a compiler.
However, to make simpler, various vendors have come up with very nice javascript
editing tools, they are macromedia Dreamweaver.
Javascript can be implemented using javascript statements that are placed within the
<script>……..</script> HTML tags in a web page. You can place the <script> tags containing
i
your javascript anywhere within your web page, but it is normally recommended that we should
keep it within the <head> tags.
1 Any text between a // at the end of a line is treated as a comment and is ignored by
javascript.
2 Any text between the characters /* and */ is treated as a comment. This may span
multiple lines.
3 Javascript also recognizes the HTML comment opening sequence <!—Javascript treats
this as a single-line comment, just as it does the // comment.
4 The HTML comment closing sequence --!> is not recognized by javascript so it should be
written as //-->
Modern Browsers come with built-in support for javascript. Frequently, we may need to enable
or disable the=is support manually. The following procedures will help us to enable and disable
javascript in our browser:
Click the chrome menu at the top right hand corner of your browser.
Select settings.
Click show advanced settings at the end of the page.
Under the privacy section, click the content setting button.
In the “javascript” section “Allow any site to run to javascript”.
i
4.1.7 DATATYPES IN JAVASCRIPT
One of the most fundamental characteristics of a programming language is the set of data types it
support. These are the types of value that can be represented and manipulated in a programming
language, they include:
This is a memory location used for holding values or used for storing values in a memory. Var,
Let, Const (keyword) is used to hold a value or declare a value, it makes it known to a compiler
or interpreter.
Name=”John”…..Initialization
While naming the variable in javascript, the following rules should be kept in mind:
Do not use any of the javascript reserved keyword as a variable name. For example,
break or Boolean
Javascript variable name should not start with a number. They must begin with a letter ot
underscore.
Javascript names are case-sensitive.
4.1.9 OPERATORS
i
Let me make a simple expression to give its meaning 4+5 = 9. Here 4 and 5 are called operands
and “+” is called the operator. Javascript support the following types of operators, they are:
3 Logical (or Relational) Operators: Javascript supports the following logical operators.
They are:
Logical AND (&&): if both operands are non-zero, then the condition becomes
true.
Logical OR (||): if any of the two operands are non-zero, then the condition
becomes true.
i
Logical NOT (!): Reverse the logical state of its operands. If a condition is true,
the logical NOT operators will make it false.
4 Assignment Operators
5 Conditional Operators
When writing a program, there may be a situation when we need to adopt one out of a given set
of paths. In such cases, conditional statements were used which allows our program to make
correct decisions and perform right action. The following selection statements are supported by
javascript are:
i
Fig. 4.1.10.2 IF ELSE STATEMENT
4 SWITCH CASE: Switch case is used to handle situation more efficiently than repeated
if-else-if.
i
While writing a program you may encounter a situation where you need to perform an action
over and over again. In such situation, you would need to write a loop statement to reduce the
number of lines. Javascript supports all the necessary loops to ease down the pressure of
programming.
i
Fig. 4.1.11.2 WHILE LOOP
2 DO WHILE LOOP: This is similar to the while loop except that the condition checks
what happens at the end of the loop. This means that loop will always be executed at least
once, even if the condition is false.
3 FOR LOOP: This is the most compact form of looping. It includes the following three
(3) important parts:
Loop Initialization: Where initialize our counter to a starting value. The
initialization statement is executed before the loop begins.
Test statement: which will test if a given condition is true or not. If the condition
is true, then the code given inside the loop will be executed, otherwise the control
will come out of the loop.
Iteration statement: where you can increase or decrease your counter.
Note: All the three (3) parts are inserted in a single line separated by semicolon.
i
Fig. 4.1.11.4 FOR LOOP
4.1.12 FUNCTIONS
A function is a group of reusable code which can be called anywhere in your program. This
eliminates the need of writing codes again and again. It helps programmers in writing modular
codes. It allows a programmer to divide a big program into a number of small and manageable
functions.
Before we use a function, we need to define it. The most common way to define a
function in javascript is by using the function keyword, followed by a unique function name, a
list of parameters (this might be empty), and a statement block surrounded by curly braces.
i
Also to invoke a function somewhere later in the script, you would simply need to write
the name of the function.
1sd
CHAPTER FIVE
CONCLUSION
i
massive knowledge during the experience. I learnt how to develop and design websites. Now, I
can confidently say that I am a programmer. I learnt communication and people management. I
was also assigned courses to facilitate.
In conclusion, I want to use this medium to commend the Federal Government of Nigeria,
National University Commission (NUC), Students Industrial Work Experience Scheme (SIWES)
unit for their support which is geared towards making students to obtain the relevant industrial-
based training and work experience necessary in their chosen professions before leaving the
higher institution. SIWES helps students and members of the academic community to effectively
utilize the resources of the industrial training experience.
I suggest that schools involved in the students industrial work experience scheme (SIWES)
should continue to encourage and give more support to the students so as to enable them acquire
the necessary knowledge and skills required for their various professions.
I also suggest that industries should have industry-based IT coordinator who sees to it that
students get the best of training relevant in their course of study. The IT coordinator should also
ensure that students are allowed to use the resources of the industry.
i
The level at which the school sends students for industrial training should be reconsidered as
students get too deeply entrenched to theoretical approaches and are almost a year from
graduation before they are sent out to have a feel of the practical world. In my opinion, I feel
students should start having a feel of practice from the formative level of their fields of study, i.e.
probably between any of the semesters of their 200 level. This will help build realistic and
mature students during their course of study and on their return, improve and update the lecturers
and ultimately, such students are then actually matured for further industrial training in
preparation for graduation during their 400 level as they become ready-made assets and become
stimulated in the practice world from improved researches done by them in academia on
their return back to the field
Finally, I suggest that the university system should encourage industries and the societies at large
to accept students embarking on industrial attachment.