Setting Up Secure Boot on Ubuntu Linux

Posted on January 22, 2023 in foss • 4 min read

I recently had to replace my motherboard on one of my PCs with a Nvidia GPU, which meant I had to figure out how to get Secure Boot working again with out-of-tree Nvidia kernel modules. Maintaining self-signed kernel modules is automated and zero-effort with dkms, but the initial setup takes a bit of legwork, so I figured I may as well document it for future reference.

This blog post specifically covers the use case of using a signed, standard distribution kernel provided by Debian/Ubuntu and using shim-signed to provision self-signed out of tree kernel modules that are registered with …


Continue reading

Reviving My Blog and Embracing Serverless

Posted on January 18, 2023 in blog • 3 min read

Hello again, world! For the last several months, this blog was offline simply because I neglected to renew the VPS that I was hosting it on, and I didn't bother to rectify the situation since this blog was always a hobby project to begin with. I finally scrounged up some spare time over the winter holidays to do just that.

Several years back I migrated from Wordpress to Pelican for a variety of reasons, one of them being the reduced maintenance burden at a much lower cost. At the time I thought hosting a static blog on my own self-maintained …


Continue reading

Review: Being a CPSC 210 TA

Posted on June 25, 2015 in ubc • 10 min read

Last term (2014W2, or Jan-Apr 2015), I had the opportunity to be a teaching assistant (henceforth abbreviated as TA) for CPSC 210: "Software Construction", which is part of UBC's CPSC software engineering stream. I've already reviewed 210 as a student in an earlier blog post; instead, this blog post will be somewhat different than my regular course reviews, being written from the perspective of a TA rather than a student in CPSC 210. There are a number of blogs out there that offer reviews of various UBC courses, but none that talk about what it's like to be a TA …


Continue reading

Review: CPSC 320, 404

Posted on June 23, 2015 in ubc • 8 min read

I took CPSC 320 and 404 this year (in 2014W2) along with a few electives, right after my second 8-month co-op stint. I actually took a lighter workload than I would usually take during regular winter sessions, in part because I was also doing a TA-ship for the first time (in fact, I've gone ahead and wrote a review about my TA experience). Keep on reading for my thoughts about these two upper-level CPSC courses.

CPSC 320:

In a nutshell:

Language: none in particular

Toolset: again, none in particular

Prereqs: CPSC 221, and either (a) 6 credits of 2nd year …


Continue reading

Review: CPSC 313, 317

Posted on June 22, 2015 in ubc • 5 min read

Again, a set of long overdue reviews for a bunch of 3rd year CPSC courses that I took in 2013W2, hopefully in time for fellow students who are considering registering for these courses. Enjoy, and as always let me know if you have any feedback; comments, questions, or suggestions are all greatly appreciated!

CPSC 313:

In a nutshell:

Language: Java, Y86 (a subset of x86 assembly used in this course)

Toolset: Eclipse, your preferred text editor

Prereqs: CPSC 213 and CPSC 221

Website/resources: CPSC 313, Piazza

Textbook: Computer Systems: A Programmer's Perspective, 2nd ed., by Bryant and O'Hallaron

CPSC …


Continue reading

Review: CPSC 304, 310

Posted on June 22, 2015 in ubc • 5 min read

This is a long overdue review for a bunch of 3rd year CPSC courses that I took in 2013W1. Better late than never, right? As it's been a lengthy 2 years since I've taken these courses, I'll probably keep these reviews a little bit shorter than some of my other reviews.

CPSC 304:

In a nutshell:

Language: relational algebra, SQL, Datalog

Toolset: exposure to Oracle, SQL*Plus

Prereqs: CPSC 221

Website/resources: CPSC 304 and lecture recordings (which are only accessible via VPN or ubcsecure; you'll get a 403 Forbidden error otherwise); Piazza

Textbook: Database Management Systems, 3rd ed., by …


Continue reading

Browse This Blog Over HTTPS!

Posted on January 08, 2015 in misc • 1 min read

Just a heads up to any security-conscious visitors: this blog is now browsable via HTTPS! Well, I did actually have a SSL certificate installed on my VPS for a while, but I didn't bother fixing up all the HTTP-only links scattered around my blog until now (which I've "fixed" by turning most of the links on this blog into relative URLs instead of absolute ones). The end result that this site is browsable via either normal, unencrypted HTTP, or via encrypted HTTPS.

https://www.vcheng.org

Please let me know if there are any glaring issues that I've not yet …


Continue reading

Inbox Zero, and Organizing My Digital Life

Posted on January 07, 2015 in personal • 3 min read

For a large chunk of time over the last year, I haven't been nearly as diligent keeping up with emails, not to mention neglecting my blog for quite a while. Part of it was due to being preoccupied with my latest co-op position at a local startup, Tasktop Technologies, but most of it was due to, well, general laziness I suppose. Well, there's no better time to fix that than right after New Year's, and the start of a new school semester. It's been years since I've last made a New Year's resolution that I took seriously, but this year …


Continue reading