
Python Programming Fundamentals with Data Science and AI-ML Unleashed
Learn Python basics and apply them to data science, machine learning, and AI projects.

Track
Software Development
Level
Foundation
Language
English
Duration
120 hours
Learning Mode
Learn at ALC or at Home
Introduction
- Gain a comprehensive understanding of Python, including its history, features, and applications in diverse industries.
- Develop proficiency in Python syntax, data types, and control flow structures for effective programming.
- Master memory management techniques and optimization strategies to enhance code performance.
- Learn to work with various data structures such as lists, tuples, sets, and dictionaries, and manipulate them efficiently.
- Explore advanced concepts in Python programming, including functions, iterators, generators, and decorators.
- Understand module, package, and library management to organize and reuse code effectively.
- Acquire skills in file handling, including reading, writing, and manipulation of data, as well as working with date and time modules.
- Compare Python with other programming languages to understand its strengths and weaknesses.
- Familiarize yourself with common Python libraries and their applications in areas like mathematics, file handling, and data manipulation.
- Develop practical coding skills through hands-on exercises and projects to solve real-world problems.
- Classifying Python, covering syntax, data structures, and basic programming concepts.
- Explaining GUI development using Tkinter and PyQt5, mastering the creation of interactive graphical interfaces.
- Classify and demonstrate effective exception handling strategies, including customized handling and logging techniques.
- Assemble skills in working with JSON data, exploring serialization, and utilizing pickling for data manipulation.
- Examine the concepts of multithreading, multitasking, and synchronization, distinguishing between multiprocessing and multithreading.
- identify Python’s Collections module for efficient data manipulation, employing various collection types in practical scenarios.
- Summarize OOP principles, including inheritance, polymorphism, encapsulation, and abstraction, for effective code organization.
- Operate learned concepts through mini projects, including a calculator, password generator, and others, enhancing practical programming skills.
- Explain SQL basics, advanced concepts like subqueries and joins, and integrate Python with MySQL for effective database interaction.
- Examine a comprehensive understanding of GUI development with Tkinter and PyQt5, creating practical projects like a text editor and calculator.
- Examining of data science principles and applications.
- Operate different tools like Anaconda, Jupyter Notebooks, and PyPI for data science.
- Summerize mathematical concepts, including vectors, matrices, probability, and statistics, to data science tasks.
- Operate efficient numerical operations and data manipulation using Numpy in Python.
- Identify Pandas for effective data manipulation, analysis, and exploration.
- Summarizing aspects of data preprocessing, including handling null values, reshaping data, and conditional selection.
- Assemble meaningful visualizations using Matplotlib for exploratory data analysis.
- Examine real-world case studies and applications in data science, analysing scenarios in companies like J.P. Morgan and Netflix.
- Identify the fundamentals of artificial intelligence, its history, development, and applications.
- Recognize foundational concepts in machine learning, including supervised and unsupervised learning.
What you'll learn ?
- By the end of the course, learners will be able to:
- Demonstrate a thorough understanding of Python, including its history, features, and diverse applications across various industries.
- Achieve proficiency in Python syntax, data types, and control flow structures, enabling the writing of efficient and effective Python code.
- Implement memory management techniques and optimization strategies to improve code performance and resource utilization.
- Work with various data structures such as lists, tuples, sets, and dictionaries, effectively manipulating them to solve programming problems.
- Master advanced concepts in Python programming, including functions, iterators, generators, and decorators, to write sophisticated and efficient code.
- Gain proficiency in module, package, and library management, enabling efficient organization and reuse of code in Python projects.
- Possess skills for effective file handling, including reading, writing, and manipulation of data, as well as working with date and time modules.
- Compare Python with other programming languages, understanding its strengths and weaknesses in relation to others.
- Become familiar with common Python libraries and their applications in areas such as mathematics, file handling, and data manipulation, enhancing the ability to leverage existing resources.
- Develop practical coding skills through hands-on exercises and projects, applying knowledge to solve real-world problems effectively.
- Discover proficiency in Python, enabling the writing of well-structured and efficient code.
- Make use of GUI development using Tkinter and PyQt5, creating user-friendly and interactive applications.
- Build effective exception handling, logging, and debugging strategies, ensuring robust and error-free code.
- Utilize JSON data, utilizing pickling for serialization, and manipulating data effectively.
- Utilize the concepts of multithreading, multitasking, and synchronization, demonstrating expertise in concurrent programming.
- Build Python’s Collections module to manipulate data efficiently, showcasing skills in handling diverse data structures.
- Make use of OOP principles effectively, organizing code using inheritance, polymorphism, encapsulation, and abstraction.
- Construct mini projects, demonstrating the application of learned concepts in real-world scenarios.
- Develop proficiency in SQL basics, advanced concepts, and Python’s integration with MySQL for effective database interaction.
- Discover advanced skills in GUI development with Tkinter and PyQt5, showcasing the ability to create complex and functional applications.
- Build proficiency in data science concepts, tools, and applications.
- Effectively utilize tools like Anaconda, Jupyter Notebooks, and PyPI in real-world data science projects.
- Make use of mathematical concepts in practical data science scenarios, enhancing analytical skills.
- Construct efficient numerical operations and data manipulation tasks using NumPy.
- Examine and Manipulate data effectively using Pandas for insightful decision-making.
- Build data preprocessing techniques to handle null values, reshape data, and perform conditional selections.
- Produce clear and meaningful visualizations using Matplotlib for effective exploratory data analysis.
- Compare real-world case studies and apply data science techniques to address complex business challenges.
- Distinguish the Foundation of artificial intelligence and its ethical implications in societal contexts.
- Develop a solid understanding of machine learning fundamentals, preparing for advanced applications and scenarios.
Syllabus
Python Introduction
- What is Python?
- History of Python
- Versions of Python
- Features of Python
- Limitations of Python
- Scripting Languages vs Programming Languages
- Applications of Python
- Python2 vs Python 3
- What is Python used for?
- Flavours of Python
- Python compared to other Languages
- Python vs Java
- How Python works?
- What is PVM?
- Compiler vs Interpreter
- Compile Time vs Run Time
- Future Scope of Python and Career Opportunities
Memory Management
- What is Memory Management?
- Memory Management in various Programming Languages
- Memory vs Storage
- Three Areas of Memory Management
- How important is Memory Management?
- Memory Management
- Memory management in Python
- Allocator Domain
- Allocation Domains in detail
- Python Memory Manager
- The Default Python Implementation C Python
- GIL
- Python Memory Allocation
- Garbage Collection
- Ways to make an object eligible for Garbage Collection
- Reference Counting in Python
- Cyclical Reference or Reference Cycle
- Generational Garbage Collection
- C Python Memory Management
- Common Ways to reduce the Space Complexity
Installation and basics of Python
- Python Installation on Windows
- Adding Python to Environmental Variable
- Checking Python Version on Windows
- Verifying Pip Installation
- What are IDE and IDLE Editors?
- How to run Python Program using IDLE?
- IDE’s Installation
- How to install Visual Studio?
- Thony installation
- Executing Python Program
- Identifiers and rules to Write Identifiers
- Constants, Variables and Literals
- Keywords or Reserved Keywords
- Python Comments
- Python comments
- Benefits of using Python comments
- Python Syntax
- Lines and Indentation
- Python User Input
Data Types & Operators in Python
- Data Types in Python
- Text Data Type
- Numeric Types
- Sequence Type
- Mapping Types
- Set Types
- Boolean Types
- Binary Types
- None Type
- Type Casting
- Operators in Python
- Arithmetic Operators
- Assignment Operators
- Comparison Operators
- Logical Operators
- Identity Operators
- Membership Operators
- Bitwise Operators
- Precedence and Associativity of Operators
- Ternary Operator
Flow control statements
- What are Control Flow Statements in Python?
- Decision Control Statements
- Simple if
- If else
- Nested If
- If elif else
- Elif ladder
- Short hand if ,if else
- Multiple Conditions using and or Operator
- Transfer Statements
- Break
- Continue
- Pass
- Iterative statements
- For
- While
- Nested For loop
- Pattern Programs
Python Strings
- Data Types in brief
- How to access String and Indexing?
- String Slicing
- Mutable and Immutable
- Mathematical Operators for String (+,*)
- Comparison of String
- String Membership
- Format String
- Escape Character
- Removing Spaces from String
- Finding Substring
- Counting Substring and Len()
- Replacing a String
- Splitting and Joining of String
- Changing Case of a String
- Checking tarting and ending part of the String
- Methods to check type of Characters present in String
Lists
- List and its Creation
- Accessing Elements of List
- List Mutability
- List Traversing
- Functions of List
- Manipulating List
- append()
- insert()
- extend()
- remove()
- Ordering Elements of List
- Alaising and Cloning of List Object
- Use of Mathematical Operators for List
- Comparision and Membership Operators
- Nested List
- List Comprehension
Tuple
- What is Tuple
- Creating a Tuple
- Accessing through Tuple
- Tuple Methods
- Mathematical and Membership Operators
- Iterating through Tuple
- Updating Tuple
- Nesting of Tuple
- Tuple Comprehension
- Unpack Tuple
- Difference between Tuple and List
- Zipping of Tuples
Set
- Creating Sets
- Modifying Sets
- Removing Elements from set
- Python set Operation
- Set Method
- Built in Functions
- Set Comprehension
- Frozen Sets
Dictionaries
- How to create Dictionary
- Accessing Dictionary
- Update Dictionary
- Delete the elements from dictionary
- Python dictionary methods
- Membership and iterating through in dictionary
- Important functions in dictionary pt1
- Dictionary Comprehension
- Nested Dictionary
Python Functions & Advance Functions
- Built in Functions
- User Defined Function
- Docstrings
- Calling a function in python
- Types of Arguements
- Variable Length Arugements
- Scope of variables
- Types of Variables
- Recursive Functions
- Namespaces
- Nested Functions
- Benifits of functions
- Anonymous function
- Lambda Function in detail
- filter,map and reduce function
- map()
- reduce()
- properties of function
- Decorators
- Chaining Decorators
- Magic Method
- Iterables
- Iterator and Iterations
- Yield Keyword
- Generators
- Iterators vs Generators
- Python Generator expression
Module, Package & Library
- What is module?
- How to create a module ?
- Possibilities of Import
- Built in Modulles
- Finding Members of module
- The Special Variable Name
- Packages
- Library
- Commonly used libraries
- Random Module
- Math Module
- PIL
- Movie Py Module
- PyScreenShot Module
Date and time module
- Date Class
- Time Class
- Date Time Class
- Time Delta class
File Handling
- Open File
- Properties of Files
- Read & Write Operation
- Seek and tell method
- OS Module
- Working with Directories
- Handling binary data
- CSV Files
- Zip and Unzip
Exception Handling
- Types of Errors
- Exception
- Exception Handling Hierarchy
- Customized Exception Handling
- Control Flow in Try and Except
- Multiple Exceptions
- Default Exception
- Finally Block
- Control Flow in try except and finally
- Else with try except finally
- Types of Exception
- Assert Keyword
Python loggers & JSON
- Python Loggers
- What is log and log file in programmin?
- Levels of log messages
- Using basicConfig
- Formatting
- Classes and functions
- Logging Handlers
- Stream Handlers
- File Handlers
- Working with Handlers
- Exception Information
- JSON
- Json
- JSON Syntax
- Datatypes in JSON
- Read ,Write and Parse JSON
- Python Object Conversions
- Python to JSON
- Formatting the results
- Serializing
- Parse JSON
- Deserialize
- Pickling & Unpickling
Regular expression
- What is Reg ex
- Character Classes
- Quantifiers
- Functions of Re-Module
- Find all methods _ Important functions of re module
- Symbols
- Web scrapping using reg exp
Multithreading
- Multitasking
- Difference between Multiprocessing and multi-threading
- Difference between Process and Thread
- Ways of creating thread in python
- Difference in program with and without Multithreading
- Thread Identification Number
- Functions/Methods in Multithreading
- Daemon Thread
- Synchornization
- Diffference between lock and semaphore
- Thread Communication
- Inter Thread Communicatio
- Concurrency and parallelism
- Race Condition and DeadLock
Python Collections Module
- Collection Modules
- Counters
- Ordered dict
- default dict
- chain map
- Named Map
- DeQue
- User Dict
- UserList
- User String
Object Oriented Programming
- Object Oriented vs Procedural Oriented
- What is Class?
- What is Object ?
- Constructor
- Self Keyword
- Functions vs Method
- Types of Variables
- Static variable
- Local Variable
- Instance Variable
- Class Method
- Static Method
- Inner Class
- Garbage Collection in OOP’s
- Destructor
Inheritance & Polymorphism
- Inheritance
- Inheritance
- Built in function in oops
- Single Inheritance
- Constructor super()
- Multiple inheritance
- Method Resolution Order (MRO)
- Multilevel Inheritance
- Hirarchical Inheritance
- Hybrid Inheritance
- Polymorphism
- Polymorphism
- Polymorphism with class methods
- Polymorphism with functions and objects
- Overloading
- Operator Overloading
- Magic Method for operator overloading
- Method Overloading
- Constructor Overloading
- Method Overriding
- Method overriding with multiple and multilevel inheritance
- Method overriding with multiple and multilevel inheritance
- Constructor Overriding
- Type System
- Duck Typing
Abstraction, Interfaces and Encapsulation
- Abstraction
- Types of Methods in Python
- How to declare an abstract method in Python
- Concrete Methods in Abstract Base Classes
- Missed Abstract methods in implementation
- Abstact classes contain more subclasses?
- Different cases for Abstract class object creation
- Built in Abstract Classes
- Interfaces
- Create a Python Interface
- Python Interfaces vs Abstract Class
- Encapsulation
- Python Access Modifiers
- Why we need Encapsulation
Python Mini projects
- Calculator
- Password Generator
- Tic Tac Toe
- Rock Paper Scissors
- Chat Bot
- BMI Calculator
- Story Generator
- Quiz Game
- Create Acronyms
Python GUI - Tkinter- Part 1
- Intro
- Introduction to Tkinter
- Widgets in Tkinter
- Tkinter Geometry
- Python Tkinter Button
- Python Tkinter Canvas
- Python Tkinter CheckButton
- Python Tkinter Entry
- Python Tkinter Frame
- Python Tkinter Label
- Python Tkinter Listbox
- Python Tkinter MenuButton
- Python Tkinter Menu
- Tkinter Project Calendar
Python GUI - Tkinter- Part 2
- Intro
- Python Tkinter Message
- Python Tkinter RadioButton
- Python Tkinter Scale
- Python Tkinter Scrollbar
- Python Tkinter Text
- Python Tkinter Toplevel
- Python Tkinter SpinBox
- Python Tkinter Paned Window
- Python Tkinter Label Frame
- Python Tkinter MessageBox
Python GUI - PyQT5- Part
- Python GUI PyQt5- Part 1 intro
- PyQt5 Introduction
- Modules and tools
- PyQt5 First Program
- PyQt5 Layouts
- QVBoxLayout and QHBoxLayout
- QGridLayout
- QFormLayout
- QStackedLayout
- Signals and slots
- PyQt5 Widgets
- QLabel
- QLineEdit
- QPushButton
- QRadioButton
- QCheckBox
- QComboBox
- QSpinBox
- QSlider
- QMenuBar, QMenu & QAction
- QToolBar
- QInputDialog
- QFontDialog
- QFileDialog
- QTab
- QStacked
- QSplitter
- QDock
- QStatusBar
- QList
- QScrollBar
- QCalendar
Python GUI - PyQT5- Part 2
- Python GUI PyQt5- Part 2 intro
- Qmessagebox
- Multiple document interface
- Drag and Drop
- Drawing API
- Clipboard
- BrushStyle Constants- Part 1
- BrushStyle Constants- Part 2
- QPixmap Class
- Database handling
- Project 1- Text Editor
- Project 2- Calculator
Python Turtle
- Python Turtle intro
- Introduction to Python Turtle
- Moving and Drawing with turtle I
- Moving and Drawing with turtle II
- First Turtle Program
- Turtle program on pen control I
- Turtle program on pen control II
- Program- Event handling
- Program on working state of the turtle module
- Working with turtle screen 1
- Working with turtle screen 2
- Program Colorfull Star Pattern
- Turtle Methods
- Program - Draw a hut using turtle module
PyGame
- Pygame intro
- Pygame Introdution
- Basic structure of a Pygame program
- Basic Pygame concepts
- Pygame - Display Modes
- Pygame - Color Object
- Pygame - Event Objects
- Keyboard Events
- Mouse Events
- Pygame - Drawing Shapes
- Pygame - Using Image
- Pygame - Displaying Text
- Pygame - Moving an Image
- Pygame - Use Text as Buttons
- Pygame - Transforming Images
- Pygame - Sound Objects
- Playing Music
- Pygame - Load Cursor
- Pygame - The Sprite Module
- Snake Game
Basic SQL
- Basic SQL intro
- Database and RDBMS
- Introduction to SQL
- SQL Subset
- RDBMS concepts
- Installing Mysql on windows
- Simple SQL queries
- SQL Expression
- SQL Operators
- DDL Operations
- DML Operations
- Functions in SQL
Advanced SQL
- Advanced SQL intro
- SQL Subqueris
- SQL Clause
- SQL Joins
- SQL Union
- SQL Group by
- SQL Views
- SQL Indexes
- SQL Transactions- Part1
- SQL Transactions- Part2
- SQL Transactions- Part3
- SQL Transactions- Part4
- SQL Transactions- Part5
Python MySql
- Python Programming with MySQL intro
- MySQL Database
- Install MySQL Driver
- Check if Database Exists
- Python MySQL Create Table
- Check if Table Exists
- Primary Key
- Python MySQL Insert Into Table
- Insert Multiple Rows
- Python MySQL Select From
- Selecting Columns
- Python MySQL Where
- Python MySQL Order By
- Python MYSQL Delete From By
- Python MySQL Drop Table
- Python MySQL Update Table
- Python MySQL Limit
- Python MySQL Join
Introduction To Data Science
- What is Data Science
- Who is Data Scientist?
- Why Data Science
- Data Science Pipeline
- Data Science Tools
- Data Science Tools (Proprietary)
- Introduction to Python Tools for Data Science
- Anaconda Installation and Setup
- Virtual Environment Setup with Anaconda
- What is PYPI?
- Installing Packages via Pip
- Jupyter Notebook
- What is a Jupyter Notebook
- Getting familiar with Jupyter Notebook
- Jupyter Magic Commands
- Case Studies
- Covid 19 Data Science Application
- JP Morgan
- Netflix User Case
- UPS
- Walmart
- Future of Data Scientist
Maths
- Vector Introduction
- Vector Arithmetic
- Dot and cross product
- Applications of Vectors
- Probability Introduction
- Conditional probability
- Multiplication Rule of probability
- Baye’s Theorem
- Statistics Introduction
- Discrete and continuous mathematics
- Set Theory
- Applications of set theory
- Relations and Functions
Numpy
- Introduction to numpys
- Creating numpy arrays and dimensions
- Indexing
- Numpy Slicing
- Numpy Arithmetic Operations
- Other Numpy Arithmetic Operations
- Broadcasting and comparison
- Solving equation with numpy
- Statistical Operation with numpy
- Numpy Exercises - Part 1
- Numpy Exercises - Part 2
- Create and manipulate arrays using numpy
- Combining 2 arrays
- Compare the elements of the two arrays
- Program to print 2d diagonal array.
- Flattening a 2d array
- Python program explaining numpy.size () function
- Non-Zero Functions with numpy
- Changing Data Type
- Trace of matrix
- Addition of two matrix
- Subtraction of Two Matrix
Tabular analysis with Pandas
- Intro video
- Introduction to pandas
- Data structures in pandas
- Reading files in Csv
- Retrieving data
- Analysing data
- Querying and sorting
- Working with dates
- Grouping and aggregation
- Merging data from multiple sources
- Writing data back to files
- Basic Plotting with Pandas
- Pandas Exercise
- How to create a DataFrame in Pandas from a dictionary of arrays/lists
- Creating Dataframe from lists
- Creating Dataframe from a list of tuples
- Create a list of nested dictionaries
- Pandas to create a dataframe
- Displays the values of each row and column using pandas
- How to read data from a string using the pandas read_csv() function
- How to reindex the rows of a Pandas DataFrame using the reindex() method
- Create two pandas Series using the NumPy linspace() function
Preprocess Data and Matplotlib
- Preprocess Data
- Intro video
- Why preprocess
- Preprocessing Technique
- Null and NaN
- Forward Fill
- Selecting data with conditionals
- Dropping columns/rows
- Subset and index data
- Reshaping
- Pivoting
- Rank and sort data
- Matplotlib
- Intro video
- Introduction to Matplotlib
- Linchart
- Improving style using seaborn
- Scatter plot
- Histogram
- BarChart
- HeatMap
Exploratory Data Analysis
- Intro video
- EDA Introduction
- Data Preparation and Cleaning
- Exploratory Analysis
- Asking and answering the questions Zale
Introduction to Artificial Intelligence
- Intro video
- What is Artificial Intelligence?
- The history of AI and its Development
- Narrow or Weak AI
- AI Techniques and Algorithms
- Natural Language Processing
- The Ethical and Societal Implications of AI
- Relationship between AI and other Technologies
- Robotics and its connection to AI
- Difference between AI and ML
- The Role of AI
- Applications of AI
- Use of AI in Social Media
Introduction to Python libraries used for AI/ML
- Intro video
- Numpy
- Pandas
- Matpotlib
- SciKit-Learn
- Tensorflow
- Keras
- PyTorche
- The Natural Langauge Toolkit
- XGBoost
- CatBoost
- OpenCV
Introduction to Machine Learning and Mathematical/Statistical Concepts for AI/ML
- Introduction to Machine Learning
- Intro video
- Introduction of Machine Learning
- Supervised Learning
- Unsupervised Learning
- Reinforcement Learning
- Data Preprocessing
- Feature Extraction
- Training data
- Which model to use?
- Overfitting / Underfit
- Mathematical/Statistical Concepts for AI/ML
- Intro video
- The necessity of Statistics for AI
- Vectors and Matrices
- Graphs for AIML
- Sets for AIML
- Probability distribution
- Hypothesis testing in AIML
- Markov model
- Clustering in AIML
- Kernal Functions in AIML
Supervised Learning
- Intro video
- Decision Tree
- Introduction to Supervised Learning
- Classification
- Regression
- Naive Bayes
- Linear Regression
- Logistic Regression
- Support Vector Machines (SVMs)
- K Nearest Neighbor
- Supervised Learning Applications
- Challenges in Supervised Learning
Unsupervised Learning
- Intro video
- Introduction to Unsupervised Learning
- Clustering in Unsupervised Learning
- Exclusive and Overlapping Clustering
- Hierarchical Clustering
- Probabilistic Clustering
- Association Rule
- Dimensionality Reduction in Unsupervised Learning
- Principal Component Analysis
- Applications of Unsupervised Learning
- Challenges in Unsupervised Learning
Basics of Neural Network
- Intro video
- What are Neural Networks
- History
- Types of Neural Network
- Weights and Biases
- How do Neural Networks Work? Part-1
- How do Neural Networks Work? Part-2
- Working of some common Neural Networks
- Neural Network vs Deep Learning
- Applications of Neural Network
Building a ML Model using Python
- Intro video
- Define the problem and determine the goals of the model
- Data preparations
- Factors to consider while choosing model
- Why to use CSV file?
- Building the ML model (Logistic Regression)- P1
- Building the ML model (Logistic Regression)- P2
- Building the ML model (Logistic Regression)- P3
- Building the ML model (Logistic Regression)- P4
- Building the ML model (Logistic Regression)- P5
- Building the ML model (Logistic Regression)- P6
- Building the ML model (Logistic Regression)- P7
- Building the ML model (Logistic Regression)- P8
- Building the ML model (Logistic Regression)- P9
- Building the ML model (Logistic Regression)- P10
- Building the ML model (Logistic Regression)- P11
Evaluating an AI/ML Model
- Intro video
- Importance to evaluate the ML model
- Accuracy of ML model
- Precision measure of the ML model
- Recall
- F1 Score
- Confusion Matrix
- Techniques to improve accuracy
- Summary of the course
Work-Centric Approach
The academic approach of the course focuses on ‘work-centric’ education. With this hands-on approach, derive knowledge from and while working to make it more wholesome, delightful and useful. The ultimate objective is to empower learners to also engage in socially useful and productive work. It aims at bringing learners closer to their rewarding careers as well as to the development of the community.
- Step 1: Learners are given an overview of the course and its connection to life and work
- Step 2: Learners are exposed to the specific tool(s) used in the course through the various real-life applications of the tool(s).
- Step 3: Learners are acquainted with the careers and the hierarchy of roles they can perform at workplaces after attaining increasing levels of mastery over the tool(s).
- Step 4: Learners are acquainted with the architecture of the tool or tool map so as to appreciate various parts of the tool, their functions, utility and inter-relations.
- Step 5: Learners are exposed to simple application development methodology by using the tool at the beginner’s level.
- Step 6: Learners perform the differential skills related to the use of the tool to improve the given ready-made industry-standard outputs.
- Step 7: Learners are engaged in appreciation of real-life case studies developed by the experts.
- Step 8: Learners are encouraged to proceed from appreciation to imitation of the experts.
- Step 9: After the imitation experience, they are required to improve the expert’s outputs so that they proceed from mere imitation to emulation.
- Step 10: Emulation is taken a level further from working with differential skills towards the visualization and creation of a complete output according to the requirements provided. (Long Assignments)
- Step 11: Understanding the requirements, communicating one’s own thoughts and presenting are important skills required in facing an interview for securing a work order/job. For instilling these skills, learners are presented with various subject-specific technical as well as HR-oriented questions and encouraged to answer them.
- Step 12: Finally, they develop the integral skills involving optimal methods and best practices to produce useful outputs right from scratch, publish them in their ePortfolio and thereby proceed from emulation to self-expression, from self-expression to self-confidence and from self-confidence to self-reliance and self-esteem!