Blogs
Random long thoughts I had over the years...
Topics range from programming, math, to my views of school
How to Check if an Application is PAM-Aware
February 6, 2022
PAM stands for Pluggable Authentication Module and its purpose from my understanding
is to separate application developers from writing an authentication scheme into their
program. Think of it as an authentication “API” for “privilege granting” applications but
is flexible how each application authenticates the user. System administrators
are given the control and decision to how each application authenticates a user by modifying
PAM configs (policies) that could be found in locations such as /etc/pam.d (location may vary depending
on the OS).
You shall not slay the client
January 31, 2022
Recently, I got the opportunity to attend a two-week-long training in Real-Time Programming For QNX Neutrino RTOS
where I am learning the ins and outs of QNX, a real-time microkernel operating system that is a UNIX-like OS.
On one of the demos, the trainer showed us a behavior that I thought was impossible. This shook the foundation of my
understanding of IPC (Inter-Process Communication) and on signals. However, this is a feature in QNX that does not
exist on Linux from my understanding.
PHYS1001 - A Review on Foundations of Physics 1
January 1, 2022
TLDR:
Intimidating at first especially to freshman students new to the University
Prepared for a lot of Derivations
Be comfortable with Math
Labs take a lot of effort and time
Do not take Monday 8am labs
MATH1152 - Introductory Algebra 1
January 1, 2022
TLDR:
Intimidating at first when learning about fields
Easier than MATH1052
Remember Non-singularity Theorem
MATH1052 - Calculus and Introductory Analysis 1
January 1, 2022
TLDR:
Intimidating at first when learning about fields
More difficult than MATH1152
Know your delta-epsilon proofs and other definitions to prove whether a sequence or function converge
Dev Blog - Symink Attack - Do not trust config files
December 26, 2021
Now that classes are over for the semester, I decided to resume work on a project I’ve been putting off for a while.
ProxyAuth is a passwordless authentication module that allows lazy people like me to access their machine without inputting their passwords.
It authenticates the user if their hardware authenticator (i.e. a smartphone) is close to the machine via Bluetooth connection.
Currently, the implementation is not convenient and there are a lot of areas that need to be worked on such as the security of the product.
A Reflection of My Internship as a Software Build Intern
December 9, 2021
This is a copy of my reflection report I submitted for Professional Experience Year (PEY), a 16 month internship
at a company. The contents of this post does not enclosed any confidential information (verified by a manager) and
all names will be redacted since this is the internet. Please note that some
of the information are outdated and my experience may not reflect what others experience. I did my internship
in 2018-2019 before the pandemic when work was not remote.
The Value of An Uninitialized Global Variable
November 6, 2021
Recently I started to read C & C++ Under the Hood. As the name implies, the book explores deeper in what goes on in the assembly level using LCC machine language (a simple machine language for educational purposes). One of the fact the author points out is that global variables are initialized to 0. While this should have been common knowledge, I was shocked because I always thought the behavior of an uninitialized variable is garbage (i.e. behavior is undefined and hence can be anything). To my defense, I actively avoid writing code that involves a global variable for various...
Using Fedora GNOME VPN Feature
July 30, 2021
I recently decided it is about time to start using a VPN for personal use. Although there are many reasons for one to use a VPN such as
masking your IP address and location, I only want to get a VPN to encrypt my traffic on Public Wifi. VPN can be great to bypass region locking,
but I rarely ever have any issues with this. The VPN provider I chose is NordVPN for no particular reason other than there was a summer deal and
is a strong choice for Linux users.
Questions to Ask In An Interview
July 24, 2021
I have been pondering lately on how to respond when the interviewer asks if you have any questions for them. After much pondering, I have compiled a small list of questions to ask for my next interview.