CategoryMisc

Just a collection of stuff (mostly from my old blog)

Stopping my Addiction

S

Hi, I’m Keith, and I’m a social media addict. I know, because I’ve seen this before. When I was around 8 years old, my father was a smoker, and I’d regularly see him leave family meals early to have a quick smoke, leaving us to finish our lunch or dinner without him. It was just something smokers did. Today, I’m not physically leaving the table like my father, but my...

The Myth of the anti-social developer

T

What is the myth There’s a belief that people in IT, specifically software developers are generally anti-social, introverted, desk-loving curmudgeons who act like Sheldon from the Big Bang Theory. What’s more frustrating, is that this belief is prevalent even among those working in technology — that somehow great coders are silent geniuses who shun people, while coding in a dark...

The Drudgery of Servers

T

As much as I love Serverless architectures, I find myself ‘locked-in’ to a server-ed WordPress blog. It’s a mixture of too much legacy content to migrate, lack of easy migration tools, and just the fact that WordPress for all it’s faults — just works! So rather than spend countless hours trying to migrate content, I decided to keep paying the $5/mo to DigitalOcean so...

Keith’s Adventures in DynamoDB Land

K

After reading the awesome DynamoDBBook from Alex DeBrie, I was prompted to fix a long running design issue with Klayers (a separate project I maintain). Like everybody else that dives into DynamoDB headfirst, I made the mistake of using multiple tables, one for each data entity. After all, a single database consists of multiple tables — so DynamoDB would logically involve multiple DynamoDB...

Playing with files within the memory of Lambda function

P

A lambda function is a like a little island, surrounded by network. Unlike Fargate containers, of EC2 instances, they do not have EFS, EBS or some other fast storage support. Everything that goes into a lambda, goes in via the network interface (and network only). And hence, since Lambda’s are ephemeral, everything going in and out of the lambda has to transverse that network...

Why?!

W

The system, which was introduced on the first day of the 2020 school session yesterday, takes only two seconds to scan a pupil’s face before his personal information, such as full name, pupil number and class, is stored into the school’s databasehttps://www.nst.com.my/news/nation/2020/01/552737/sk-taman-perling-1-uses-facial-recognition-scanners-mark-pupils A school in Johor became the first in...

My 2020 resolution: Pay for news!

M

This year I resolve to support the media that I like, i.e start paying for content I’ve been consuming for free all this time. I believe that if we want better media, we need to start paying for it, and it’s not a matter of quality content, a free and fair media, is an absolute necessity for democracy to operate — after all, people can’t make informed choices if they...

Multi-Accounts for AWS with Google '+' emails.

M

Last week, I launched a new pipeline for Klayers to build Python3.8 Lambda layers in addition to Python3.7. For this, I needed a separate pipeline because not only is it a new runtime, but under the hood this Lambda uses a new Operating System (Amazon Linux 2 vs. Amazon Linux 1) So I took the opportunity to make things right from an account hierarchy perspective. Klayers for Python3.7 lived in...

Android TV boxes

A

Android TV boxes, are computers that stream content from the internet onto your TV. The difference between them and your smart-phone is that it has a HDMI connector to your TV, and it usually comes pre-loaded with software to illegally stream content. While the boxes themselves, are general purpose computers running Android (the most popular OS today), the real focus of any regulation should be...

2018 in Review

2

2018 in review I started the year building out govScan.info, a site that audits .gov.my websites for TLS implementation. Overall I curated a list of ~5000 Malaysian government domains through various OSINT and enumeration techniques and now use that list to scan them daily. The project stalled around Jun/July, and it’s basically on auto-pilot till I figure out what to do. The scans still...