100 takeaways from 100 Friday Hacks
NUS Hackers is a student group in the National University of Singapore that tries to spread the hacker culture. Among other things, they run a weekly talk series called Friday Hacks, which has the tagline:
come for the pizza, stay for the inspiration
As someone who enjoys learning about a wide breadth of things in CS, Friday Hacks talks have probably been the highlight of my university experience. I’ve gotten exposed to so many things that I would never have encountered in my classes or on my own, and I’ve met so many people who are truly passionate about what they do. I hope to keep attending even when I start full-time work.
I attended my first Friday Hacks as a (very noob) Sec 3 student in 2016, though I only really got into it when university was approaching. I recently discovered that as of the end of my university studies, I’ve watched 100 (!!!) Friday Hacks talks!
Of the 100, my absolute favourite talks are:
- What Programming Languages Research Can Do For You: A Hacker’s Perspective by (now-Dr.) Kiran Gopinathan of NUS
- Autocad’s Journey to the Web by Kevin Cheung of Autodesk
- Both talks on music technology by Hao Hao Tan of Bandlab Technologies
Anyways, I wanted to commemorate that by listing out one random takeaway from every single Friday Hacks I’ve ever watched. Here is that list:
No. | Date | Talk | Speaker(s) | One Takeaway |
---|---|---|---|---|
1 | 08 Apr 2016 | Slaying the Dragon: Implementing a language in Ruby | Jason Yeo of SourceClear | People make programming languages (and you can get free T-Shirts by attending talks) |
2 | 08 Apr 2016 | Implementing a toy compiler with LLVM | Omer Iqbal of Garena | A programming language can have multiple compilers |
3 | 13 Sep 2016+ | Project Intern | NUS Hackers (Vishnu Prem, Ng Zhi An) & Yeo Quan Yang | McDonald’s in Zürich costs $20 |
4 | 06 Sep 2019 | How I discovered 19 NPM malicious packages | Tran Viet Quang of NUS | Taint analysis exists |
5 | 13 Sep 2019+ | Building a high-throughput blockchain platform for applications | Jun Hao of Zilliqa & Edison of Aqilliz | Consensus algorithms exist and are cool |
6 | 13 Sep 2019+ | Open source: what, why and how | Tee Hao Wei of NUS Hackers | The difference between copyleft licences and permissive licences |
7 | 31 Jan 2020 | Analytics in the Real World | Paul Beaumont & Andrew Tan of QuantumnBlack | GANs exist |
8 | 31 Jan 2020 | Server-Side Request Forgery: From HTTP to Localhost | spaceraccoon / Eugene Lim | You can just do bug bounty, and there are young Singaporeans doing it |
9 | 05 Feb 2021* | Relational Programming in miniKanren | Dr William Byrd of the Hugh Kaul Precision Medicine Institute | Relational programming exists |
10 | 05 Feb 2021* | Implementing a Kanren from the Ground Up | Prof Jason Hemann of Northeastern University | There are many real-world software engineering problems where making a small PL is the best solution |
11 | 27 Aug 2021* | From Netflix to Zoom: Demystifying Video Streaming | Prof Ooi Wei Tsang of NUS | Livestreams “catch up” after lagging by “squeezing” the silent period between words |
12 | 27 Aug 2021* | Observability in Production | Omer Iqbal of Garena | How a message queue like Kafka + the producer/consumer model works |
13 | 03 Sep 2021+ | Bayesian Networks - Thinking about causality in ML | Paul Beaumont of QuantumnBlack | There is predictive, descriptive, and prescriptive machine learning |
14 | 03 Sep 2021+ | Safe At Any Speed | Malcolm Karutz of Jane Street | Code that won’t be garbage collected will be pretty fast |
15 | 10 Sep 2021+ | Source Academy: Past, Present, Future | Prof Martin Henz of NUS | JavaScript was intended to look like Java |
16 | 10 Sep 2021+ | Running the ICFP 2019 Programming Contest | Prof Ilya Sergey of Yale-NUS | Research conferences have programming contests to promote the use of programming languages / constructs |
17 | 17 Sep 2021+ | Optimism, Pessimism, and Algorithms | Prof Seth Gilbert of NUS | Smoothed analysis exists as a way to analyse algorithms beyond worst / best / average case |
18 | 22 Oct 2021* | Explore quantum computing through gaming | Huang Junye of IBM | QPong exists and illustrates quantum superposition nicely |
19 | 22 Oct 2021* | Linters in Dart | Jeffery Kwoh of Google | You can get software that automatically generates subtitles as you speak |
20 | 05 Nov 2021* | Security at ExpressVPN | Timothy Tan of ExpressVPN | Gophish exists |
21 | 05 Nov 2021* | Five Tips To Make You A Better Engineer | Kai Hendry of Thoughtworks | Make minimal programs / “prototype” before you bring code into a codebase |
22 | 21 Jan 2022 | GPU.JS (2016) - building a JS transpiler in 24 hours - for speed and lulz | Eugene Cheah of UI-licious | People can do crazy shit within 1 Hack&Roll |
23 | 21 Jan 2022 | Wholesome Hacks You Don’t Want to Miss! | Hack&Roll 2022 Teams | I should try to use that Pynoculars project for teaching |
24 | 11 Feb 2022* | NUSMods - What’s Next? | Christopher Goh of NUSMods / NUS Hackers | NUSMods.com is student-run, and people can just contribute to it |
25 | 11 Feb 2022* | When DevOps meets Piracy | Fazli Sapuan of Garena | Anything worth doing is worth overdoing |
26 | 18 Feb 2022* | How to build a Devtool startup in Silicon Valley | Ying Hang of Tym | A first exposure to how startup funding and VCs work |
27 | 18 Feb 2022* | Ktor in Action | Shengyou of Jetbrains | People like using ORMs |
28 | 11 Mar 2022* | How to Build a Career Moat | Cedric Chin of CommonCog | Job security in tech really means whether you can get your next job, not whether you can stay in your current one |
29 | 18 Mar 2022 | Zero Knowledge Secret Sharing: Securely Digitizing the Singapore Government | Li Hongyi of OGP | My security / cryptography knowledge is probably useful even if I want to be a developer in future |
30 | 18 Mar 2022 | Two Weeks Too Slow | Joe Sarre of Gordian Software | Thinking about how to run project planning is a large part of a CTO’s (and Eng Manager’s) job |
31 | 25 Mar 2022 | Geospatial Analysis & Visualisation | Lee Chee Yuan of Zeus Living | The earth being round makes GIS problems hard |
32 | 25 Mar 2022 | A Happy Free Software Maintainer | Bastien Guerry of Org Mode | For OSS, it’s important and helpful that your users are potential developers and contributors |
33 | 01 Apr 2022 | Why bet the company on Elm for both front and backend? | Choon Keat of Hobnob | Real software engineers in industry use functional programming! (I had just learnt some Elm earlier this year) |
34 | 12 Aug 2022 | AY22/23 Welcome Tea | NUS Hackers | I should apply to Coreteam |
35 | 09 Sep 2022 | From Thought to Launch | Yumin Wong of GitHub | Releasing software is a very involved process involving canaries, feature flags, A/B testing etc. |
36 | 09 Sep 2022 | Practical Challenges of Data Ingestion at Scale | Louis Ditzel of Marshall Wace | Companies can afford to write a bunch of software in-house that would otherwise have good OSS solutions |
37 | 16 Sep 2022 | Cats, Burrito, and Laziness | Jason Yeo of paidy | The IO monad is useful |
38 | 16 Sep 2022 | Modernize Data Layer using Cloud Native Database | Ron of YugabyteDB | Traditionally it’s either easy to vertically scale xor horizontally scale a DBMS |
39 | 14 Oct 2022+ | The Making of Precursor: AMA | Andrew “bunnie” Huang | Getting HCI right is the final frontier in security |
40 | 14 Oct 2022+ | Post-quantum algorithms, or quantum key distribution? | Philip R. Zimmermann, creator of PGP | Phil Zimmermann’s preferred NIST PQC competition submission is NTRU Prime because it doesn’t suffer from patent concerns |
41 | 04 Nov 2022 | Graphs at Scale | Rishabh Anand of NUS | Graph Neural Networks exist |
42 | 22 Jan 2023 | You’ve Learnt Programming. Now What? | Herbert Ilhan Tanujaya of Allium | Remember to be playful with programming |
43 | 03 Feb 2023 | Idea to Revenue: How to make your first internet dollar | Dexter Leng | You can sell the software you randomly make if you want to |
44 | 03 Feb 2023 | How to Build an Award Winning Project | Hack&Roll 2023 Teams | I am happy these teams won |
45 | 10 Feb 2023 | Cool Hacks from Hack&Roll 2023 (Pt. 2) | Hack&Roll 2023 Teams | Wow people try to build startups from hackathon projects |
46 | 17 Feb 2023 | Fuzzing Database Engines with SQLancer | Prof Manuel Rigger of NUS | SQLancer is taking GSoC interns |
47 | 17 Feb 2023 | Creating Battery-Free IoT Devices | Prof Ambuj Varshney of NUS | Battery replacement is a research problem that exists |
48 | 10 Mar 2023 | Coreboot, Intel, and Custom Laptops | Xue Yao of NUS | Coreboot exists and is cool |
49 | 10 Mar 2023 | The Hard Things about Hardware | Ajinkya Bhat of Seamless XR | A strong advisory board for a startup is important |
50 | 17 Mar 2023 | My Life with Linux | Kai Hendry of Thoughtworks | “Security problems are just bugs” |
51 | 17 Mar 2023 | PhD Application: Lessons I learnt from my 4 year journey | Ang Ming Liang of NUS | It’s important to consider survivorship bias when you receive advice |
52 | 24 Mar 2023 | Abusing Sensor Data for Fun (and Profit?) | Sriram Sami of NUS | Your phone is sensing a lot of things all the time |
53 | 24 Mar 2023 | Building a modular IoT transaction platform | Jacek Soh of Beep | Startups pivot but can do so within their area of expertise |
54 | 31 Mar 2023 | Code Golf | Kuan Wei Heng | This is fun and people are so good wow |
55 | 18 Aug 2023 | AY23/24 Welcome Tea | NUS Hackers | Others should join Coreteam |
56 | 25 Aug 2023 | Should engineers design? | Chester of Mobbin | Engineers can help designers out if they just take an interest in their app’s UX |
57 | 25 Aug 2023 | 2 Side Projects: Pair Coding with ChatGPT | Gao Wei of Blackrock | ChatGPT can help you make your small silly hacks quickly |
58 | 08 Sep 2023+ | Engineering for Latency in Automated Trading | Pranav, Pierre, and Nonie of Hudson River Trading | Store by value where possible |
59 | 08 Sep 2023 | Kubernetes: Its Simpler Than You Think! | Ambrose Chua of MicroSec | Tilt and Kompose exist and are cool |
60 | 15 Sep 2023 | From an Idea to a Product: How I Made My First Indie App | Roc Zhang of TikTok | Wow my Mandarin reading skills are terrible |
61 | 15 Sep 2023 | From Zero to Thousands: Building a Tech Startup for DevOps and SREs and Joining Grafana | Ildar Iskhakov of Grafana Labs | Selling a company at an early stage is not cool |
62 | 22 Sep 2023 | Online Algorithms Made Easy | Lester Tan of Jane Street | An application of an incremental graph computation library is a web frontend framework |
63 | 13 Oct 2023 | How Ahrefs Saved US$400M in 3 Years By Not Going To The Cloud | Efim Mirochnik of Ahrefs | On-prem is more viable for not-that-massive companies than I expected |
64 | 13 Oct 2023 | What Programming Languages Research Can Do For You: A Hacker’s Perspective | Kiran Gopinathan of NUS | Wow I should definitely take the NUS course on the Coq Proof Assistant / Logic for Proofs and Programs, and having a good presentation slide framework thingy is so useful |
65 | 20 Oct 2023+ | Frameworks for Moving Fast - An Early-Stage Startup Journey | Leland Tran of Momos | The 2 pizza rule exists |
66 | 20 Oct 2023+ | Low-level Rust: Fine, I’ll Just Make My Own Stable ABI, with Compact sum-types and Stable rustc! | Pierre Avital of Eclipse Zenoh | How different types of types are laid out in memory |
67 | 27 Oct 2023 | Taming open code LLMs for SQL generation and bug fixing | Dr. Asankhaya Sharma of patched.codes | The Stack’s source code dataset has 358 programming languages |
68 | 27 Oct 2023 | Hacking My Way Through NUS: Prototyping to Real-World Usage | Raivat Shah of Mind Stretcher | Google Sheets is a reasonable database for your random hacks |
69 | 27 Oct 2023 | DuckDB: A new kind of analytical database system | Gábor Szárnyas of DuckDB Labs | DuckDB has really cool SQL constructs like ASOF JOINs |
70 | 03 Nov 2023 | Quantum Theory: A First Approach to the Modern Paradigm | Clive Cenxin Aw of NUS CQT | The beam splitter experiments are a nice way to illustrate quantum concepts |
71 | 03 Nov 2023 | Quantum Theory: What It’s Good For | Zaw Lin Htoo of NUS CQT | Grover’s algorithm exists |
72 | 03 Nov 2023 | Real World Quantum Technology: Space Quantum Lasers | Félix Ribuot-Hirsch of SpeQtral | The BB84 QKD algorithm exists and isn’t too hard to reason about |
73 | 02 Feb 2024* | Multiplayer Game Programming with Mirror | Saulius Vincevičius of the University of Leeds | Mirror and Photon exist as netcode frameworks |
74 | 02 Feb 2024* | Hack&Roll 2024 Winning Game Projects | Hack&Roll 2024 Teams | I am very very happy these teams won |
75 | 16 Feb 2024 | More Hack&Roll 2024 Winning Projects! | Hack&Roll 2024 Teams | Keynote makes hella nice slideshows |
76 | 23 Feb 2024 | Arbitrage in Crypto: MEV Attacks | Tan Chien Hao | Decentralized finance is hella centralized |
77 | 23 Feb 2024 | MySQL Internals | Omer Iqbal of TikTok | I should study for my upcoming CS3223 midterm |
78 | 15 Mar 2024 | Exciting Trends in Music Technology with Deep Learning | Hao Hao Tan of Bandlab Technologies | A huge challenge in music generation / music x NLP methods is how to best represent audio, since 1 second of audio has ~44k samples which would be a lot of tokens |
79 | 15 Mar 2024 | Time Synchronization Protocols in Distributed Systems | Ayush Chattoraj of TikTok | How the Network Time Protocol works |
80 | 22 Mar 2024 | Creating Prototypes that Prove a Point | Loya Shoib of NUS | Prototypes can be invalidated before you even find the target users |
81 | 22 Mar 2024 | ERP X: Road Charges, Reimagined | Justyn Oh of OGP | The largest impediment to new product adoption in OGP is probably still red-tape |
82 | 05 Apr 2024 | Livestreams are Fun! Creating + Hosting a RTMP Relay Server with Google Cloud’s ecosystem | Weiyuan Liu of Ascenda | You can productionize an app with pretty much exclusively using cloud service provider functions |
83 | 05 Apr 2024 | The Misunderstood Principal Component Analysis (PCA) | Prof Wong Limsoon of NUS | Injecting small Gaussian noise (“pre-whitening”) is a way to figure out which Principal Components are informative |
84 | 12 Apr 2024 | How to Actually Become Data Driven | Cedric Chin of Postcognito | Process behaviour charts exist |
85 | 12 Apr 2024 | The New XOR Problem | Shawn Tan of the Montreal Institute of Learning Algorithms (Mila) | There is interesting work done in the model architecture space |
86 | 23 Aug 2024 | Security-as-Code: Building our way to better security outcomes | Eugene Lim of OGP | Government employees can make / pick arbitrary go.gov.sg links |
87 | 23 Aug 2024 | Continuations: Five minutes to learn, a lifetime to understand | Prof Olivier Danvy of Yale-NUS | The existence of the term “Jones Optimality”, which is an idea I’ve previously tried but only clunkily been able to express |
88 | 06 Sep 2024 | Accessibility Testing with Purple A11y | Lim Zui Young of GovTech | I should make buttons actual buttons, not just images wrapped in hrefs |
89 | 06 Sep 2024 | Autocad’s Journey to the Web | Kevin Cheung of Autodesk | Many tricks on how to make browser-based software feel fast |
90 | 13 Sep 2024 | How to share a secret (with your friends) | Michael Hu of NUS | Lagrange interpolation is cool and I can’t believe something like that exists to find a unique solution |
91 | 13 Sep 2024 | AI in Complex Adversarial Games | Nguyen Khoi Nguyen of NUS | I should study for my upcoming CS2109S midterm |
92 | 20 Sep 2024 | Lessons learned from 2 decades of open source | Julian Ospald of Heilmann Software | Rage is a great motivator for open source maintenance |
93 | 11 Oct 2024+ | MiTM Magic: Outsmarting SSO and 2FA Defenses | Timothy Tan of Partior | Evilginx exists |
94 | 11 Oct 2024 | Machines are Customers Too: The Next Frontier in Business Growth | Katja Forbes of Standard Chartered | Machines are customers too |
95 | 18 Oct 2024 | Exploring AI Research: How to Get Started as an Undergraduate | Joseph Teoh of NUS | NUS SoC now has a summer research programme for freshmen |
96 | 18 Oct 2024 | One Engineer, 400,000 Users | Adrian Goh JW | Nodeflair only had one full-time engineer |
97 | 25 Oct 2024 | Operating Systems for Fast I/O | Prof Li Jialin of NUS | Dennard’s scaling law exists |
98 | 25 Oct 2024 | “Hey XXX, What Song Is This?” - A Gentle Introduction to Music Content Identification | Hao Hao Tan of Bandlab Technologies | Song recognition software can identify song covers |
99 | 08 Nov 2024 | Achieving 100% Eva Synchro: Enhancing Enterprise Cybersecurity | Loke Hui Yi of TikTok | I like “pew pew” as a synonym for “do offsec things” |
100 | 08 Nov 2024 | Introduction to Open-RMF | Xiyu Oh of Intrinsic | Lifts can have APIs |
101 | 15 Nov 2024 | Graduating Coreteam Lightning Talks | NUS Hackers (Richard Qi, Lam Chun Yu, Francis Yeo, Devansh Shah, Wong Kok Rui) | I finally gave a Friday Hacks talk! |
+watched recording, *watched on Zoom
Affiliations and titles listed as of talk date.