So finally, lots of work behind, you got admitted to college or university.
All you have to do now is follow through the courses and get the education you deserve. Right?
Education gives you only so much as you invest!
In the distant past, higher education was attended by a selected handful
of students, with intimate relation to their professors.
Contrast that with the hundreds enrolling every year now.
It's fair to give the opportunity of learning to masses. But we can't
expect to be treated as specific individuals. Which professor has time
to follow up on the strengths and interests of 450 students per year?
Knowledge and opportunity won't come handed on a silver plate. Here are
my tips to get the max out of your education!
Actively seek the best material
- Don't assume your textbooks or curriculum is of the best quality.
What textbooks do people advise on forums? In the student groups?
What do other institutions teach?
- Try to get hold of a solid book. Books take effort to write, and are
hard to update. This makes it likely – along with strong reviews
– that the content lays out time-tested foundations well.
- Complement solid material with a peek into cutting-edge research.
Your class materials are likely behind state of the art. Look around
for survey papers on Google Scholar or Arxiv – for the Operating
Systems class I would search for "Operating Systems Survey".
It's ok if you don't understand most of a paper, but you will draw
inspiration and see contemporary problems.
Discover projects opportunities
Eventually you will choose a project to work on or a
specialization. Maybe there's an email sent around with the list of
options; or there can be a project fair with presentations.
Don't assume these options are exhaustive!
- Project-based approach: Look around websites of the departments.
Ask peers if they know about interesting projects. Then ask leaders
of those interesting projects directly.
- Person-based approach: If you have a professor who you
admire, walk up to them and ask if they have any project opportunity
to work on.
Code to verify your understanding
Learn to write programs as soon as possible. Computers are ruthless
in correctness-checking. You can't get away with talking your way out
of an exam.
A great way to verify our understanding is to put it in code.
- Operating Systems? Write a toy memory allocator or a disk access
scheduler. Fake your memory or disk with a simple array.
- Probability Theory? Maybe code transforming uniform distribution
into specific distributions. Plot the results. Make a small game where
plot data slowly appears, and try to guess which distribution it is
- Biology? Could design a database schema for storing species
information. Test it by inserting data of a few species. Are there
any species which don't fit easily?
The goal here is not necessarily completion. Feel free to abandon
the code halfway. But by trying to formalize your understanding, you
will gain valuable insight.
Join two extra-curricular groups
With steady access to internet, plenty of bandwidth and interesting
books, it is just too easy to stick to the confort of the dorm room.
To stay social and widen our perspective, join two groups unrelated to
your main studies:
- One frequented by your peers, but not about the subject. Department
sports club, board game geeks, dormitory pizza bakers, whatever you
fancy. You will get to know your peers better, and occasionally get
useful bits of information.
- One unrelated to your studies and faculty. How about dancing,
cycling or hiking? By diversifying you encounter different mindsets
and interesting people.