Friday, 19 February 2016

Week 6 of CS2020 - AVL trees. There was a discussion about Skip Lists during the Linked List lecture last week (or two weeks ago) and I was still not sure how I could go about implementing it as there was uncertainty (probability) in whether a node was to be skipped.

As for Splay Trees, it was mentioned briefly but it was precisely at those moments in which I was not paying full attention and so it was as good as not having heard of them at all.

I was bored at night because the next assignment was to be released on Thursday. It ended up being released today, Friday.

I spent the Wednesday night trying to improve on the Computing Club's website. There were spam form submissions being sent to the destination email and it was extremely annoying. At first, I thought it was just some committee member testing the form, but the submissions never stopped and event had dumb content like "asd".

I added ReCaptcha, and afterwards a senior recommended robots.txt or something along those lines. I will read up on that the next time I am "free".

This was the most nerve-wrecking laboratory session of CS2100. There was an unknown bug in which the S4 output was never activated. I changed the IC chip (which was declared as "PASS" by the tester) to my friend's (my friend was fast and was done with her circuit), and a new bug arose. Now the S3 output did not light up for certain inputs in which S3 was expected to light up.

It was ONE minor mismatch that screwed the logic up. I connected a "0" to one of the inputs which should have been "A". I debugged this at 12.55pm on the dot.

A welfare gift from NUSWS, the musical CFA group I spend my Thursday nights (and soon, Sundays too) with.

This orchid belonged to a dish in the CNY lunch for SoC this afternoon. I felt honoured to have been given a chance to attend this exclusive event. I still love my quiet life more, though.

Labels: ,

0 comments | Leave a comment

Wednesday, 10 February 2016

I don't know if it was way more than necessary to use Devise, because I ended up using only 1 or 2 modules out of the 10 that they offered, which is mainly the OmniAuth one.

But I finally understood why I could not customise the view for the new session (above). It was because I did not configure the view scope.

This is the default model that I somehow landed myself with. This website is going to have its appearance changed all over again because this simply does not look professional at all, in addition to being not very functional. Usually, a management dashboard will have a collection of tools on the side bar like the WordPress ones.

My birthday present to myself for 2016: Succeeded with the login system!
Next, my CS2020 problem set... it looked like a Parallel Merge Sort problem, but I am so, so lost... sigh...

Labels: , , , ,

0 comments | Leave a comment

Tuesday, 9 February 2016

On my first official rest day last week, I tried to create a login system for my faculty's main student club. I failed many times, despite following every single one of these tutorials faithfully in turn.

Rails Authentication with OAuth 2.0 and OmniAuth
How To Configure Devise and OmniAuth for Your Rails Application
Google Integration Using Devise and Omniauth In Rails App

I managed to cook something up in the end; the ingredients of the login system:
  1. Devise (authentication and redirection)
  2. OmniAuth (integrate Google into Devise)
  3. Google Application (Google API)
  4. "User" model (but does not seem necessary because I am "outsourcing" the authentication to Google)
To be honest, I am still unclear about this login system.

I tried to erase the login form but I could only do it halfway. I blocked registration, recovery, and anything else that allows logging in through the form. Will update soon if there is any success.

Labels: , , , ,

0 comments | Leave a comment

Sunday, 7 February 2016

Labels: , , ,

0 comments | Leave a comment

Friday, 5 February 2016

Week 3 (Lab 1)

Week 4 (Lab 2)

Labels: , ,

0 comments | Leave a comment



About Blog

Anything geeky or nerdy shall be here!

About Me

Currently at a loss for words

My LinkedIn

Programming Languages

(in descending order)
  1. Python
  2. Ruby
  3. Java
  4. JavaScript
  5. C#
  6. Everything Else

Web Development

(in arbitrary order)
  1. HTML
  2. CSS
  3. jQuery
  4. Bootstrap, Materialize
  5. Hugo
  6. Flask
  7. Ruby on Rails


  1. Elasticsearch
  2. MongoDB
  3. Chef
  4. Ansible

The Hacks


    January to June

  • DSO: Defusing the Binary Bomb
  • DSO: Dynamic Malware Analysis
  • NUS AY15/16 Semester 1

  • CS1101S Programming Methodology
  • CS1231 Discrete Structures
  • MA1101R Linear Algebra I
  • MA1521 Calculus for Computing
  • December

  • GitHub

Contact Me


BiZiT Society
NUS Wind Symphony


NUS Computing Club
NUS Hackers


October 2015
November 2015
December 2015
January 2016
February 2016
March 2016
April 2016
May 2016
June 2016
August 2017
September 2017
October 2017
November 2017