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.
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...
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:
- Devise (authentication and redirection)
- OmniAuth (integrate Google into Devise)
- Google Application (Google API)
- "User" model (but does not seem necessary because I am "outsourcing" the authentication to Google)
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.
Sunday, 7 February 2016
Friday, 5 February 2016
Week 3 (Lab 1)
Week 4 (Lab 2)