Scientific Programming
Turn pages with ‹ Prev and Next ›, by swiping, or with the arrow keys. Go to Chapters 1–2 →
Who's teaching you
Dr. Muhammad Ariff Baharudin
Lecturer, Faculty of Electrical Engineering
Room: 05-02-01, Block P19a, FKE
Email: mariff@fke.utm.my
Phone: 019-714 1408
Course coordinator: Dr. Mohd Adib Sarijari
Want to know more about me?
Google it!
or
DuckDuckGo it!
What this course is about
Using a programming language the way an engineer does: to describe a problem precisely, then to solve it with a program.
Think like a programmer
- Algorithms, flowcharts, pseudocode
- Variables, types, operators
- Control flow & functions
Compute like an engineer
- Arrays & matrices (NumPy)
- Files, debugging & plots
- Interpolation & polynomials
Work with data
- The data analytics workflow
- Cleaning, combining & visualising data
- A group project in Python
The course used to be taught in MATLAB. We now use Python: it's free, it runs on your own laptop, and industry uses it widely. The ideas carry over to any language.
Course learning outcomes
By the end of this course, you will be able to…
Assessed by: Quiz · Test · Final exam
Assessed by: Quiz · Assignment · Final exam
Assessed by: Assignment (group project)
How we'll learn
Run the examples
Every page has notebook cells, like Jupyter or Colab: Python runs in your browser.
Your turn
A short practice question that checks itself, with a hint and a solution.
Learn faster
Use an AI assistant as a tutor: prompt, read, test, and own the code.
Know the templates
Each chapter ends with an exam toolkit: fill-the-slot templates you can write by hand.
Python + Spyder
Install Anaconda Distribution: it brings Python, Spyder, Jupyter, NumPy and Matplotlib.
Google Colab
Notebooks in the cloud, with a Google account. Open any ⬇ .ipynb from these pages there.
The chapters at a glance
UTM SPACE classes are long weekend sessions, usually two chapters each. Session, quiz, test and project dates are announced in class and on e-learning.
How you'll be assessed
Coursework 50% · Final exam 50%
Quizzes
Quiz 1 & Quiz 2, 5% each
CLO1, CLO2
Test
Chapters 1–5, written by hand
CLO1
Assignment
Group project: solve one engineering problem in Python and write it up
CLO2, CLO3
Final exam
Four questions: Ch. 1–4, 5–7, 8–10, 11–12, by hand
CLO1, CLO2
When in UTM, do as the UTMians do
House rules
Bring a laptop
With Python installed, or at least a browser for the notebook cells.
Practise every chapter
Do every ✏️ Your turn question, then write the templates out by hand.
Learn together
Collaborate, ask, and help each other.
Attend at least 80%
Keep your attendance above 80%.
Dress the part
Follow the UTM dress code.
No bonus marks
Every mark comes from the assessments.
Copied work gets zero marks, and may lead to disciplinary action by the Faculty.
- ✓ Work individually, unless a task is explicitly a group activity.
- ✓ Explain what you read, and the code you use, in your own words.
- ✗ Handing in code (from a friend, the web or an AI) that you can't explain.
- ✗ Don't do someone else's work, or lend yours to be copied.
Main references
Muním Zabidi
Engineering Computation with Python: An Introduction for Electrical Engineering Students
2026
Rob Mastrodomenico
The Python Book
Wiley, 2022
John Guttag
Introduction to Computation and Programming Using Python
MIT Press