Difference between revisions of "CoE 164 S2 AY 2022-2023"

From Microlab Classes
Jump to navigation Jump to search
m
m (Added MidP materials)
Line 17: Line 17:
 
<br>
 
<br>
 
'''Course Guidelines''': [[:File:Coe164 2122s2 Syllabus.pdf | <nowiki>[syllabus]</nowiki>]]
 
'''Course Guidelines''': [[:File:Coe164 2122s2 Syllabus.pdf | <nowiki>[syllabus]</nowiki>]]
 +
<br>
 +
'''Grade Lookup''': [https://script.google.com/macros/s/AKfycbzMlzZHeiimZrs_XoeVdX0xjpgC9CyeuFrjLbjLA8tWqZwlEvrmwNhLR1bnnBtdYKVHzQ/exec <nowiki>Google Apps Script</nowiki>]
 
<br>
 
<br>
  
Line 36: Line 38:
 
| 1
 
| 1
 
|
 
|
[01] Rust: First program<br>
+
[01] Rust: About<br>
[01] Rust: Basic data types<br>
+
[01] Rust: Basic data types and language grammar<br>
[01] Rust: Language basics
+
[01] Rust: Control statements and functions
 
|
 
|
[SE01] Rust Basics<br>
 
 
[[:File:CoE 164 2s2223 W01 SE.pdf | [SE01] Specifications]]<br>
 
[[:File:CoE 164 2s2223 W01 SE.pdf | [SE01] Specifications]]<br>
[https://uvle.upd.edu.ph/mod/assign/view.php?id=433590 <nowiki>[SE01A] Submission Bin</nowiki>]<br>
+
[https://uvle.upd.edu.ph/mod/assign/view.php?id=433590 <nowiki>[SE01A][bin] Submission Bin</nowiki>]<br>
[https://uvle.upd.edu.ph/mod/quiz/view.php?id=433617 <nowiki>[SE01B] Submission Bin</nowiki>]<br>
+
[https://uvle.upd.edu.ph/mod/quiz/view.php?id=433617 <nowiki>[SE01B][bin] Submission Bin</nowiki>]<br>
[https://uvle.upd.edu.ph/mod/quiz/view.php?id=433618 <nowiki>[SE01C] Submission Bin</nowiki>]
+
[https://uvle.upd.edu.ph/mod/quiz/view.php?id=433618 <nowiki>[SE01C][bin] Submission Bin</nowiki>]
 
|
 
|
 
|-
 
|-
Line 50: Line 51:
 
|
 
|
 
[02] Rust: Advanced data structures<br>
 
[02] Rust: Advanced data structures<br>
[02] Rust: Data ownership<br>
+
[02] Rust: Data ownership
[02] Rust: Error handling
 
 
|
 
|
[SE02] Advanced Rust<br>
 
 
[[:File:CoE 164 2s2223 W02 SE.pdf | [SE02] Specifications]]<br>
 
[[:File:CoE 164 2s2223 W02 SE.pdf | [SE02] Specifications]]<br>
[https://uvle.upd.edu.ph/mod/assign/view.php?id=439375 <nowiki>[SE02A] Submission Bin</nowiki>]<br>
+
[https://uvle.upd.edu.ph/mod/assign/view.php?id=439375 <nowiki>[SE02A][bin] Submission Bin</nowiki>]<br>
[https://uvle.upd.edu.ph/mod/quiz/view.php?id=441954 <nowiki>[SE02B] Submission Bin</nowiki>]<br>
+
[https://uvle.upd.edu.ph/mod/quiz/view.php?id=441954 <nowiki>[SE02B][bin] Submission Bin</nowiki>]<br>
[https://uvle.upd.edu.ph/mod/quiz/view.php?id=441955 <nowiki>[SE02C] Submission Bin</nowiki>]
+
[https://uvle.upd.edu.ph/mod/quiz/view.php?id=441955 <nowiki>[SE02C][bin] Submission Bin</nowiki>]
 
|
 
|
 
|-
 
|-
Line 64: Line 63:
 
[03] Rust: OOP features<br>
 
[03] Rust: OOP features<br>
 
[03] Rust: Generic types<br>
 
[03] Rust: Generic types<br>
[03] Rust: Unsafe mode
+
[03] Rust: Error handling
 
|
 
|
[SE03] Rust and OOP<br>
 
 
[[:File:CoE 164 2s2223 W03 SE.pdf | [SE03] Specifications]]<br>
 
[[:File:CoE 164 2s2223 W03 SE.pdf | [SE03] Specifications]]<br>
[https://uvle.upd.edu.ph/mod/quiz/view.php?id=447755 <nowiki>[SE03] Submission Bin</nowiki>]
+
[https://uvle.upd.edu.ph/mod/quiz/view.php?id=447755 <nowiki>[SE03][bin] Submission Bin</nowiki>]
 
|
 
|
 
|-
 
|-
 
| 4
 
| 4
 
|
 
|
[04] Test-driven development<br>
+
[04] Rust: Packages and modules<br>
[04] Data compression (run-length/gray)
+
[04] Test-driven development
 
|
 
|
 
|
 
|
Line 80: Line 78:
 
| 5
 
| 5
 
|
 
|
[05] Runtime profiling and complexity analysis<br>
 
[05] Data compression (LZMA)
 
 
|
 
|
 
|
 
|
Line 93: Line 89:
 
| 8
 
| 8
 
|
 
|
[08] Turing machines<br>
 
[08] Language interpreter
 
 
|
 
|
 
|
 
|
Line 100: Line 94:
 
| 9
 
| 9
 
|
 
|
 +
[MidP] Message Obfuscation
 
|
 
|
 +
[[:File:CoE 164 2s2223 MidP.pdf | [MidP] Specifications]]<br>
 +
[https://uvle.upd.edu.ph/mod/assign/view.php?id=452181 <nowiki>[MidP][bin] Submission Bin</nowiki>]
 
|
 
|
 +
[https://script.google.com/macros/s/AKfycbzF8Lwx5dI98DSwVsyVe4J1zNhruzEf6QbFItTwNK7H19Sqya4Pfs1RgcXUz1qTE4Rv/exec <nowiki>[MidP][form] Group Assignments</nowiki>]<br>
 +
[[:File:CoE 164 2s2223 MidP Annexes.pdf | [MidP][doc] Algorithm and File Format]]
 
|-
 
|-
 
| 10
 
| 10
Line 142: Line 141:
 
= Grading Rubric =
 
= Grading Rubric =
 
50% Software exercises (SE)<br>
 
50% Software exercises (SE)<br>
20% Midterm project (MidP)<br>
+
30% Midterm project (MidP)<br>
30% Capstone project (CP)
+
20% Capstone project (CP)
  
 
= Completion Requirements =
 
= Completion Requirements =

Revision as of 23:56, 2 May 2023

Course Information

Academic Period: 2nd Semester AY 2022-2023
Units: 1 (3 laboratory)
Workload:

  • 3 hours laboratory per week

Instructors:

  • Carl C. Dizon [carl.dizon at eeemail]
  • Nestor Michael C. Tiglao [nestor at eeemail]

Course Description: This is an advanced laboratory course on the application of the concepts, methodologies, skills, and tradeoffs in designing/building computing systems to solve challenging problems, in an efficient and structured way.
Synopsis: This course aims to 1) build and evaluate efficient computing platforms, 2) present algorithms, methods, and tools needed to solve challenging problems, and 3) practice sound engineering judgement in solving engineering problems.
Delivery Method: Digital materials and open-time laboratory sessions
Online Platforms: UVLe, Piazza, Google Meet, Zoom, other quiz platforms, other code submission platforms.
Course Guidelines: [syllabus]
Grade Lookup: Google Apps Script

Course Outline

Week Topics Academic Requirements Resource Links
0

[00] Course overview and synopsis
[00] Course requirements

[slides]
[syllabus]

1

[01] Rust: About
[01] Rust: Basic data types and language grammar
[01] Rust: Control statements and functions

[SE01] Specifications
[SE01A][bin] Submission Bin
[SE01B][bin] Submission Bin
[SE01C][bin] Submission Bin

2

[02] Rust: Advanced data structures
[02] Rust: Data ownership

[SE02] Specifications
[SE02A][bin] Submission Bin
[SE02B][bin] Submission Bin
[SE02C][bin] Submission Bin

3

[03] Rust: OOP features
[03] Rust: Generic types
[03] Rust: Error handling

[SE03] Specifications
[SE03][bin] Submission Bin

4

[04] Rust: Packages and modules
[04] Test-driven development

5
6
READING BREAK
7
LENTEN BREAK
8
9

[MidP] Message Obfuscation

[MidP] Specifications
[MidP][bin] Submission Bin

[MidP][form] Group Assignments
[MidP][doc] Algorithm and File Format

10
11
12
13
14
15
16
FINALS WEEK
17
FINALS WEEK

Grading Rubric

50% Software exercises (SE)
30% Midterm project (MidP)
20% Capstone project (CP)

Completion Requirements

Students are required to fulfill the following requirements for course completion. Failure to fulfill any of these requirements will result in receiving an INC in the course.

  • Submit half of the SEs offered throughout the semester
  • Submit the MidP
  • Submit the CP

Announcements

March 2023

13 March 2023

Hello!

I am writing to give you a not-so-gentle reminder that, after a few weeks, SE02 will be released on Tuesday, 14 March 2023 on UVLe. Deadline for accomplishing the exercises is on Friday, 24 March 2023.

Finally, I would like to set-up a regular session with all of you on Tuesday, 14 March 2023 at EEEI 204 at our designated time (2:30 PM). We will also concurrently have a Zoom session for those who will not be able to attend physically. The link to that is here:

URL: <redacted>
Meeting ID: <redacted>
Passcode: <redacted>

If you have any inquiries, please send a message to me through this email.

- Carl Dizon (talk)

06 March 2023

Hello!

You are receiving this email regarding CoE 164 because you are enrolled in my section. This will also be the main e-mail thread regarding updates in our course.

As promised before, we have finally set-up the Piazza platform for the course. If you are currently receiving this email, you should have been registered to the platform. Otherwise, please register by yourself through this link. Please check the platform as soon as possible as some students have already posted some questions there.

Finally, I am writing to inform you that due to a memo related to the ongoing PUV drivers' strike against the modernization program, there will be no onsite classes in EEEI this week. Since we still would like to learn, I would like to set-up a regular session with all of you on Tuesday, 07 March 2023 through Zep at our designated time (2:30 PM). We will meet at EEEI 204 (Samsung Lab) for our lecture class.

Link: https://zep.us/play/yVjmm4
PW: eeei_da_best

Please note that this space is currently being set-up, so there may still be some problems. Additionally, Zep recommends any Chromium browser to use the website but it also works for Firefox.

If you have any inquiries, please send a message to me through this email.

- Carl Dizon (talk)

February 2023

28 February 2023

Hello!

I apologize for the confusion. We will be meeting at EEEI 204 (Samsung Lab) instead. Please note that this will be our laboratory room starting this week.

If you have any inquiries, please send a message to me through this email. We are also still setting-up the Piazza platform for the course.

- Carl Dizon (talk)

27 February 2023

Hello!

You are receiving this email regarding CoE 164 because you are enrolled in my section. This will also be the main e-mail thread regarding updates in our course.

First of all, I would like to personally apologize for late announcements as we are also busy formulating course content as we go through the semester. I have also yet to send out forms for the icebreaker and diagnostic tests, and weekly pre-attendance. Nonetheless, hopefully we can announce course updates more often starting today.

As we have discussed in our onboarding meeting last week, we will be using UVLe primarily as our avenue for course delivery. For those who were not enrolled in UVLe yet, here are the course details so that you can enroll yourself in it. Note that there are no assessments released yet, and we will announce if they are already uploaded soon.

URL: https://uvle.upd.edu.ph/course/view.php?id=12205
PW: <redacted>

For redundancy (e.g. UVLe is undergoing maintenance), you can access the materials at the UP Microlab classes wiki. Just find the wiki page dedicated to our class entitled CoE 164 S2 AY 2022-2023:

https://classes.up-microlab.org/index.php/CoE_164_S2_AY_2022-2023

Finally, I would like to set-up a regular session with all of you on Tuesday, 28 February 2023 at EEEI LC1 at our designated time (2:30 PM). We will also concurrently have a Zoom session for those who will not be able to attend physically. The link to that is here:

URL: <redacted>
Meeting ID: <redacted>
Passcode: <redacted>

If you have any inquiries, please send a message to me through this email. We are also still setting-up the Piazza platform for the course.

- Carl Dizon (talk)

21 February 2023

Hello!

You are receiving this email regarding CoE 164 because you are enrolled in my section. This will also be the main e-mail thread regarding updates in our course. Please ignore the previous email thread entitled "[CoE 164] <redacted> Class Updates" because I have just changed the subject of the email thread to add the semester when the course is offered.

To start the semester, I would like to set-up an onboarding meeting with all of you on Tuesday, 21 February 2023 at EEEI Rm 307* at our designated time (2:30 PM). We will also concurrently have a Zoom session for those who will not be able to attend physically. The link to that is here:

URL: <redacted>
Meeting ID: <redacted>
Passcode: <redacted>

It's for us to see each other and be up to date with the course information and requirements, and how the course will go through the semester in general.

Thank you and hope to see you soon!

- Carl Dizon (talk)

* For those unaware, Rm 307 is located at the 3rd floor old building. From the stairs, it is on the left side adjacent to the STC laboratory (Rm 208). This room is also tentative only as we are waiting to secure a computer lab for us.