@@ -27,27 +27,29 @@ Course Codex
27
27
Study hard what interests you the most, in the most undisciplined,
28
28
irreverent, and original manner possible -- Richard Feynman
29
29
30
- This article is more than just a collection of syllabi, it's a deeply personal
31
- endeavour. I reflect back on my journey as a student, a tribute to the mentors
32
- who lit the path ahead of me, and a commitment to those who will one day walk
33
- a similar road. For those who know me personally know that I've been super
34
- duper fortunate to have crossed paths with some truly amazing teachers and
35
- mentors. These individuals taught me to think critically, ask the right
36
- questions. But not every moment was full of rainbows and sunshines. I've also
37
- navigated moments of confusion, of wishing the curriculum had been clearer,
38
- more connected to the real-world skills I needed.
30
+ This article is more than just a collection of syllabi; it's my deep and
31
+ personal endeavour. As of writing this, I reflect back on my journey as a
32
+ student, giving a tribute to the mentors who lit the path ahead of me, and a
33
+ commitment to those who will one day walk a similar road.
34
+
35
+ For those who know me personally know that I've been super duper fortunate to
36
+ have crossed paths with some truly amazing teachers and mentors. These
37
+ individuals taught me to think critically and ask the right questions. But not
38
+ every moment was full of rainbows and sunshines. I've also navigated moments
39
+ of confusion, of wishing the curriculum had been clearer, more connected to
40
+ the real-world skills I needed.
39
41
40
42
This article is my way of bridging that gap.
41
43
42
- You know what, I've realised this pretty early in my career that the tech
43
- industry moves quite fast and how challenging it can be to step from the world
44
- of academia into the realities of building softwares and training AI models.
45
- Therefore, I'm crafting these **"ideal" ** interpretation of my courses not
46
- because I claim to have all the answers, but because I want to offer the kind
47
- of structure and guidance I once wished for. My goal here is simple: to design
48
- course outlines that not only strengthen foundational knowledge but also equip
49
- students with the practical tools and critical mindset needed to thrive in an
50
- ever-evolving landscape.
44
+ I've realised this pretty early in my career that the tech industry moves
45
+ quite fast and how challenging it can be to step from the world of academia
46
+ into the realities of building software and training AI models. Therefore, I'm
47
+ crafting these **"ideal" ** interpretations of courses not because I claim to
48
+ have all the answers, but because I want to offer the kind of structure and
49
+ guidance I once wished for. My goal here is simple: to design course outlines
50
+ that not only strengthen foundational knowledge but also equip students with
51
+ the practical tools and critical mindset needed to thrive in an ever-evolving
52
+ landscape.
51
53
52
54
So, to all those reading this, I hope these courses inspire you to learn
53
55
fearlessly, just as my mentors inspired me.
@@ -60,9 +62,10 @@ Introduction to Programming
60
62
61
63
.. note ::
62
64
63
- The course code may vary from uni to uni. This is an entry-level
64
- foundational in most of the schools which students take in their freshman
65
- year.
65
+ The course code and title may vary from uni to uni. This is an entry-level
66
+ foundational course offered in most if not all schools to students in
67
+ their freshman year. This course is a prerequisite for almost all the
68
+ software development, machine learning and computer science courses.
66
69
67
70
- **Duration. ** 10 weeks
68
71
- **Language. ** Language-agnostic (`Python `_ as an experimenting language)
@@ -71,18 +74,19 @@ Overview
71
74
===============================================================================
72
75
73
76
Programming is more than writing lines of code. It's about learning how to
74
- think like a problem-solver, breaking down complex ideas into smaller
75
- manageable pieces. In this course, we won't just learn and memorise syntaxes or
76
- chase after clever one-liners or cheeky hacks, we'll focus on building a solid
77
- foundation, one that will empower you to pick up any programming language in
78
- the future. While Python will be our guiding tool due to its simplicity and
79
- rich library support, the real goal here is to make you comfortable with the
80
- concepts of programming |dash | the logic, structures, and the core paradigms,
81
- so that languages like C++, Java, or Javascript feel less like mountains to
82
- climb and more like familiar landspaces.
83
-
84
- By the end of this 10 weeks journey, you'll be able to solve small, everyday
85
- problems with code by automating repetitve tasks, building simple programs, or
77
+ think like a problem-solver and breaking down complex ideas into smaller,
78
+ manageable pieces. In this course, we won't just learn and memorise syntaxes
79
+ or chase after clever one-liners or cheeky hacks; we'll focus on building a
80
+ solid foundation, one that will empower you to pick up any programming
81
+ language in the future. Although Python will be our guiding tool due to its
82
+ simplicity and rich library support, the real goal here is to make you
83
+ comfortable with the concepts of programming |dash | the logic, structures, and
84
+ the core paradigms |dash | so that languages like `C++ `_, `Java `_, or
85
+ `JavaScript `_ feel less like mountains to climb and more like familiar
86
+ landspaces.
87
+
88
+ By the end of this 10-week journey, you'll be able to solve small, everyday
89
+ problems with code by automating repetitive tasks, building simple programs, or
86
90
even kickstarting a personal project you've always dreamed about. More
87
91
importantly, you'll have the mindset and confidence to build something from
88
92
scratch, break it, fix it, and make it better!
@@ -94,26 +98,25 @@ By the end of this course, you will:
94
98
95
99
- develop a programmer's mindset, cultivate a logical problem-solving way of
96
100
thinking that extends beyond writing code.
97
- - think beyond the syntax and learn not just how to write code, but why certain
98
- approaches work better than others.
99
- - master fundamental concepts |dash | variables, loops, conditionals, functions,
100
- and objects |dash | core constructs you'll find in nearly every programming
101
- language.
102
- - write clear, structured and maintainable code by learning how to organise
103
- your thoughts into clean, efficient, and reusable code, a skill that's super
104
- important for both personal projects and team collaborations.
101
+ - think beyond the syntax and learn not just how to write code, but why
102
+ certain approaches work better than others.
103
+ - master fundamental concepts |dash | variables, loops, conditionals,
104
+ functions, and objects |dash | core constructs you'll find in nearly every
105
+ programming language.
106
+ - write clear, structured, and maintainable code by learning how to organise
107
+ your thoughts into clean, efficient, and reusable code, a skill that's super important for both personal projects and team collaborations.
105
108
- understand language-agnostic principles by recognising the patterns that
106
109
underline all programming languages, so you can easily transition to other
107
- languages like C++, Rust, or Javascript down the road.
110
+ languages like C++, ` Rust `_ , or JavaScript down the road.
108
111
- solve problems by applying programming to small, personal tasks like
109
112
automating a daily chore, parsing a text file, or building a basic to-do app.
110
113
- prepare yourself for future courses and industry workloads by building a
111
114
strong foundation that will make advanced topics like algorithms, data
112
115
structures, AI, and cloud computing far less intimidating.
113
- - learn to google your way through any debugging session!!!
116
+ - learn to Google your way through any debugging session!!!
114
117
115
- This course isn't just about "getting the right answers." It's about learning
116
- how to ask or rather google the right questions.
118
+ This course isn't just about ** "getting the right answers." ** It's about
119
+ learning how to ask or rather Google the right questions.
117
120
118
121
Structure
119
122
===============================================================================
@@ -126,7 +129,7 @@ curriculum.
126
129
.. rubric :: Programming Mindset or Thinking in Code
127
130
:heading-level: 3
128
131
129
- Since its the first week, we won't dive headfirst into coding but rather
132
+ Since it's the first week, we won't dive headfirst into coding but rather
130
133
cheekily rewire ourselves to think like a programmer. Before writing fancy
131
134
algorithms, we need to learn how to break problems into smaller, logical
132
135
steps. This week is all about developing a programming mentality.
@@ -139,8 +142,8 @@ curriculum.
139
142
- What is programming?
140
143
141
144
- Understanding programming as a problem-solving tool.
142
- - How computers "think"? Basics of how code gets executed (interpreted
143
- vs. compiled languages).
145
+ - How computers ** "think" ** ? Basics of how code gets executed
146
+ (interpreted vs. compiled languages).
144
147
- Why programming is more about logic than language?
145
148
146
149
- Thinking like a machine
@@ -158,24 +161,26 @@ curriculum.
158
161
159
162
- Building blocks of code
160
163
161
- - Introduction to fundamental concepts of programming like variables
162
- (identifiers), data types, etc. and their similarities with Maths.
164
+ - Introduction to fundamental concepts of programming like variables,
165
+ data types, etc. and their similarities with Maths.
163
166
164
- **Interactive Lab: **
167
+ **Interactive Hands-On Lab: **
165
168
166
- - Compare and disect various programming blocks for the same code across
169
+ - Compare and dissect various programming blocks for the same code across
167
170
multiple programming languages.
168
171
169
172
**Reflection and Homework: **
170
173
171
- - **Reflect. ** Whatever you learned today about programming in any way
172
- shape or form.
174
+ - **Reflect. ** Whatever you learned today about programming in any way,
175
+ shape, or form.
173
176
- **Reflect. ** What you think about **"step-by-step thinking" ** and compare
174
177
how you would normally solve a problem?
175
178
- **Homework. ** Find a simple program that solved a problem |dash | bring
176
179
at least one example to share next week (it can be anything from a simple
177
180
algorithm or someone's personal project you found online).
178
181
179
-
180
-
181
182
.. _Python : https://www.python.org
183
+ .. _C++ : https://cplusplus.com/doc/tutorial/
184
+ .. _Java : https://www.java.com/en/download/help/whatis_java.html
185
+ .. _Javascript : https://developer.mozilla.org/en-US/docs/Web/JavaScript
186
+ .. _Rust : https://www.rust-lang.org
0 commit comments