0% found this document useful (0 votes)
39 views

Materi 1

This document provides an overview of coding and computer programming concepts. It discusses how coding is becoming a basic literacy in the digital age. It then defines computer programming as a way to give computers instructions to perform tasks or solve problems. The document introduces integrated development environments (IDEs) that provide tools for software development and lists some popular IDEs like Visual Studio Code. It also defines Python as a high-level, cross-platform programming language and discusses several uses of Python, including for websites, image recognition, data science, and natural language processing. The document concludes with an outline of topics that will be covered in a Python programming course.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
39 views

Materi 1

This document provides an overview of coding and computer programming concepts. It discusses how coding is becoming a basic literacy in the digital age. It then defines computer programming as a way to give computers instructions to perform tasks or solve problems. The document introduces integrated development environments (IDEs) that provide tools for software development and lists some popular IDEs like Visual Studio Code. It also defines Python as a high-level, cross-platform programming language and discusses several uses of Python, including for websites, image recognition, data science, and natural language processing. The document concludes with an outline of topics that will be covered in a Python programming course.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 33

“Coding is becoming

a basic literacy in the


digital age”

https://www.schooleducationgateway.eu/en/pub/teacher_academy/catalogue/detail.cfm?id=101895
Image credits to: Google Careers
Data Scientist?
Computer Science Academician?
UX Researcher?
Social Scientist?
Computer is “Dumb”
unless we program it...
What is Programming?

Computer programming is
a way of giving computers instructions
about what they should do next.

These instructions are known as code, and computer programmers write


code to solve problems or perform a task.
Integrated Development Environment (IDE)

An integrated development environment (IDE) is a


software application that provides comprehensive
facilities to computer programmers for software
development.

Visual Studio Code (URL:


https://code.visualstudio.com/)

➔ IDLE (included in Python)


➔ Spyder (URL: https://www.spyder-ide.org)
➔ Jupyter (URL: https://jupyter.org)
➔ Notepad 😅, Notepad++

Image credits to: https://www.jetbrains.com/pycharm/


What is Python?

A high-level A cross-platform
programming language programming language

Created in February 1991 by Guido van Rossum at Free to use including for
Centrum Wiskunde & Informatica (CWI) in the Netherlands commercial purposes

Python 3.10 (Download here: https://www.python.org/)


Python is useful for various purpose (1)

Instagram and Spotify app are developed using Python

Source: https://learn.onemonth.com/10-famous-websites-built-using-python/
Python is useful for various purpose (2)

https://www.tensorflow.org/learn
Python for image recognition

Image credits to: https://medium.com/@zachary.bedell/image-recognition-using-tensorflow-and-probability-52f0e35de198


Python is useful for various purpose (3)

Image processing using Python Data science using Python


http://opencv.org/ http://matplotlib.org/
Python is useful for various purpose (4)

Natural language processing using Python Game development using Python


https://github.com/amueller/word_cloud
Bonus: Automate Boring Stuffs Using Python

Automate sending emails using Python


https://www.youtube.com/watch?v=Jbix9y8iV38
Course
Information
Course Outline

1. Introduction to Programming
2. Variable, Data Type, and Number System
3. Control Mechanism (Selection and Repetition)
Pre-Midterm topics
4. Strings
5. Text files and exceptions handling
6. Functions and lists

7. Tuples, mutability, sets, and dictionaries


8. Recursion
9. Object Oriented Programming (OOP) Post-Midterm topics
10. Advanced OOP
11. Graphical User Interface (GUI)
Learning Resources: Primary Reference Books

The Practice of Think Python


Computing Using (2nd Edition)
Python (3rd Edition) 2016
2016
Allen B. Downey
William F. Punch,
Richard Enbody

Available at our
Faculty’s Library
Learning Resources: More Books

How to Code in Head First


Python Programming: A
2018 Learner's Guide to
Programming Using
Lisa Tagliaferri the Python Language
2009
Free e-Book!
https://assets.digitalocean.com/ David Griffiths,
books/python/how-to-code-in-pyt
hon.pdf Paul Barry
Learning Resources: Online Learning

W3Schools (concise tutorials):


https://www.w3schools.com/python/

Tutorialspoint (tutorials with more explanations):


https://www.tutorialspoint.com/python/index.htm

Codecademy (self-paced courses and good course organization):


https://www.codecademy.com/catalog/language/python

Python documentations (VERY IMPORTANT!):


https://docs.python.org/3/

Youtube ^^

Stackoverflow (your partner when finding errors):


https://stackoverflow.com/questions/tagged/python
Activities
1. Lecture video
Provided in our Scele course page for all topics

2. Pre-class quiz
Via Quizziz (opt)

3. Post-class quiz
Via Quizziz (opt)
Course Credit: 4 SKS 4. Synchronous session
Via Offline Classroom and Zoom

5. Programming lab/tutorial session (1x weekly)


Ask Asdos

6. Programming assignment(4x)
Submissions via slots in our Scele coursepage

7. Independent study
Learning Media

Our course page https://scele.cs.ui.ac.id/course/view.php?id=3392

Our Class Session Our Lab Session

Room A1.10 Link is provided in the course page


Online session will be notified
Grading

Score Components Weight

Participation 5%

Programming Lab (10x) 10 %

Programming Assignment (4x) 20 %

Quiz 10 %

Mid-Term Exam 25 %

Final Exam 35 %
Rules

1. Always prepare yourself before the class session


Watch lecture video, take pre-class quiz, read books

2. Don’t worry about your grade


Just follow the instruction, take extra miles, you will eventually pass

3. Practice, practice, practice!


You need to hustle more to be a good programmer, BUT never forget to eat, rest, and exercise adequately.

No plagiarism will be tolerated Don’t hesitate to ask your


mentors
Tips (Tambahan)

1. Jangan malu bertanya atau meminta bantuan. Terutama jika Anda


merasa benar-benar kesulitan. Dosen dan asisten dosen akan membantu
atau mengarahkan. ^▿^

2. Begitu soal lab/tugas/forum diskusi muncul di SCeLE, langsung baca


dan kembali lagi kemudian. Butuh waktu untuk memahami soal. Dengan
membaca, setidaknya ‘nempel’ di kepala gambaran masalah yang akan
dihadapi.

3. Baru belajar programming? PRACTICE, PRACTICE, PRACTICE ^-^

a. Tidak bisa memiliki skill programming secara PASIF.


b. Unduh semua kode yang disediakan, coba jalankan, dan ikuti apa
yang kode tersebut kerjakan.
c. Jangan takut mencoba cara/strategi pemrograman atau sintaks
baru yang berbeda dari yang diberikan di kelas.
Tentang Plagiarisme (1)

Plagiarisme tidak diterima di perkuliahan.

Contoh plagiarisme halus:

1. Diskusi dan bertukar ide dengan teman. Teman tidak di-acknowledge di


pekerjaan yang dikumpulkan.

2. Mendapatkan sumber dari buku/internet yang membantu. Anda paham


dan melakukan sedikit modifikasi. Sumber tersebut tidak di-acknowledge
di pekerjaan yang dikumpulkan.

3. Mendapat kode teman dan memahaminya. Anda membuat kode Anda


sendiri setelah terinspirasi dari programnya. Proses ini tidak Anda
ceritakan di acknowledgement.
Tentang Plagiarisme (2)

Tips menghindari plagiarisme:

1. Jika Anda mendapatkan bantuan dari orang lain atau sumber di


internet, ceritakan apa adanya proses bagaimana Anda menggunakan
bantuan tersebut untuk membuat karya/program Anda (mis.
cantumkan tautannya jika dari internet).

2. Anda sewajarnya akan dinilai sesuai besar kontribusi Anda dalam


membuat karya/program tersebut
Tentang Plagiarisme (3)

Seputar plagiarisme:

1. Biasanya mahasiswa melakukan plagiarisme karena ‘kepepet’ dan


merasa tidak akan dapat menyelesaikan persoalan yang sedang
dihadapinya sehingga diambillah jalan pintas yang ternyata adalah
plagiarisme yang cukup parah (mis. menjiplak kode apa adanya dan
berpura-pura itu Anda yang memikirkannya).

2. Dalam keadaan sesulit apapun, jangan ragu untuk meminta bantuan


kepada dosen / asisten dosen.

3. Pengecekan plagiarisme akan dilakukan.


Let’s get started
STEP 1

1. Please update your profile picture in Scele

2. Please update your name in Scele

Naming format: Full Name_NPM


Example: Lintang Matahari Hasani_1906437951

3. A quick tutorial for using Scele:

You may try the following activities in Scele:

a. Download this slides


b. Post your self-introduction in the forum
(...)
c. Submit a file (empty .txt is OK)
to this submission slot
(...)
STEP 2

Prepare your essential weapon

1. Install the latest version of Python


https://www.python.org/downloads/
2. Get an Integrated Development Environment (IDE)
a. VSCode (Free)
b. Notepad++
c. Google Colab (Online)
d. Pycharm
e. Thonny (Free)
etc...

Code your first program ^^

You might also like