Skip to content
@Arcane-Systems-Reading-Group

Arcane Systems Reading Group

This study group exists to provide a community around the exploration of niche CS topics, work on truly meaningful stuff, and have fun in the process.

Welcome to Arcane Systems Reading Group!

This study group is about the internals of compilers, programming languages, distributed systems, databases, file formats, internet protocols, operating systems, browsers, emulators, and to build a community around this kind of exploration. You're not expected to have attended previous weeks and expected to adhere to the standards of the Geneva War Convention.

Since we're just starting out, we plan on meeting once a month on a random Sunday afternoon that will be decided in the WhatsApp / Discord GC and work on the planned topics listed here. Feel free to join us during these sessions and decide if this group suits you!

Upcoming Sessions

OFFICIAL FIRST SESSION ! by vxsha-256

Linux Kernel Module Programming
Let's write a Linux kernel module on a x86-64 Ubuntu 24.02 VM because I am scared of corrupting my own PC. We'll be using The Linux Kernel Module Programming Guide, a free book by Peter Jay Salzman, Michael Burian, Ori Pomerantz, Bob Mottram, Jim Huang.

Reviewing DOOM:

Explore DOOM 3 Source Code and its engineering, such as the Quake III arena engine, Binary Space Partitioning, Fast inverse square root algorithm, Lectures from John Carmack & more. We read and discuss all things DOOM including watching it run in weird place.

⌘ Hack Sessions:

TBD
✦ check out what we've planned here

⌘ Past Sessions:

Pre-Season 01: April 7th, 2024

Byte-Sized Workshops

PL & The Web:

The 1 Billion Row Challenge, Exploring Programming Language Runtimes, Crash Course into Low-Latency Systems and Large-Scale Backend Engineering.

Interpreters, Package managers, and Planetary databases:

Go over the Crafting Interpreters Book, Dive into Reproducible builds with Nix, and review Monarch: Google’s planet-scale in-memory Time Series Database.

Networking guide to the Internet:

Intro to Networking fundamentals, Practical end-to-end Authenticated Encryption, Speedrunning computer networking, and Reading Post-Mortems of Catastrophic Failure in Big Tech Companies.

ML systems & Advanced Hardware (Semiconductors + GPUs):

Internals of JAX, ML systems and Compilers, Alternate experiments such as Q*, and KANs, Exploring advancements in semiconductors and accelerators for machine learning.

Scheduled Events

[x] BSOD ( bimonthly sessions of development ) :

BSOD is a one-week intense jam where you implement a cool piece of software from scratch. Writing something from scratch turns theory into practice. You may think you know how a piece of technology works, but until you write it yourself, you truly wouldn't understand it completely.

  1. ZigFest: 8-day crash course into Zig and Systems Engineering by vxsha-256

    Designing SIMD Algorithm from Scratch, Building your own TCP/IP, Modern SOTA in-memory cache implementation, and Rebuilding Redis from the ground up.

  2. Deployment from Scratch: over-engineering a website in the 21st century by vxsha-256

    Learn how how web-apps work in production by working on our very own website - ASRG.tech! Learn the fundamentals for setting up servers and provisioning databases while gaining real-life experience.

  3. OS-Dev: 4-week speedrun of building a mini-os from scratch with Rust and C by vxsha-256

    Implementing a kernel from scratch, exploring the C run-time model, concurrency and hypervisors, and much more hell has to offer !

  4. UNIX Jam: 1-week festival of intense systems programming and high-performance optimizations by vxsha-256

    Deep look into io_uring and eBPF, recreate coreutils with your favorite language, distributed system challenges, writing x86 assembly for FFMPEG and so much more fun stuff.

  5. Compiler Construction: 10-day jam of building modern compilers by vxsha-256

    SOTA compiler optimization techniques, design experimental features, work on your own virtual machine around it, learn from other more established compilers.

[x] OCaml My Caml :

A week-long hacking retreat to work on a variety of OCaml projects, including but not limited to the compiler, concurrency libraries, platform tooling, and benchmarking. Dive into functional programming and learn to appreciate actual ML languages instead of drooling over a whitepaper like Haskell /s.

[x] Open Session :

Free-for-all kind of event where people give talks, get help on their homework/projects and work on random stuff. This is open to all and is an excellent way to integrate into the community. You can even just sit and watch what each member is doing without necessarily needing to pair-program.

Ground Rules & General Information

Note

The only requirements you need to join the study group is the willingness to experiment and have fun. This is an all-inclusive community where there are little to no barriers. As with any social community, learn to take any constructive feedback and assume any critcism comes from a place of love and not malice. This is a chill community to share our love for systems, not to get you a $500k TC job (you might if you keep working at it). There are already tons of communities out there for it. We're here to learn and build awesome things at our own pace.

On the other side of things, here is a quote from one of our fellow member that represents the inevitable :

Important

" Death, Taxes and AI startups "

~ Ramneet Singh

As the group name's suggests, we're more focused on niche and exciting problems rather than generic problems. While we'd love to hear about your startup / next big thing, we certainly don't want you use this as a platform for it. Unsolicited promotion that isn't mentioned explictly beforehand will result in insta-ban (Good luck with the appeal lol). Sponsored products will likely be exempted from this since I'l be screening it & make sure it's legit. To know more, send an email and I'll be happy to setup a meet / discuss more.

Feature List

Contributions welcome! Just open an issue and I'll get in touch shortly.

Contribution Guide

shoutout to Praneeth for the write-up.

Project Ideas:

  1. Check if your project ideas satisfy the requirements specified in the ground rules.
  2. If so, check the existing project ideas to see if your idea integrates nicely with one of them, or if it is a separate project on its own.
  3. Is your project 50% done? then it is probably good enough to showcase it in a session.
  4. If not, is it a reading/exploration project? Then it probably doesn't require a GitHub repo, contact the lead or hit us up in the WhatsApp group.
  5. If it is a group project to work on, make sure it fits nicely within 3 Hours. It probably requires a GitHub repo, contact the lead anyway or hit us up in the WhatsApp group.
  6. Once a date is confirmed for your project, find reference material to get started on it, and share this with everyone else.
  7. Present/read/develop the project, and have fun !

Contributing to Existing Projects

  1. Refer to each project for any possible GitHub Project Tracker.
  2. Feel free to reach out to the primary developer of the project.
  3. Follow any code guidelines specified in the README (chances of there being any guidelines whatsoever are pretty slim).
  4. If it's a large contribution with significant complexity, consider bringing it up as an idea for an open session or BSOD.

Popular repositories Loading

  1. season1-bucketlist season1-bucketlist Public

    list of sessions to work on.

    4

  2. asrg.tech asrg.tech Public

    how to over-engineer a website 101.

    HTML 2

  3. .github .github Public

    everything you need to know about ASRG

    1 3

  4. .chadrc .chadrc Public

    A knowledge trove for all things ASRG - Systems Programming, CyberSecurity exploits and Core-CS concepts.

Repositories

Showing 4 of 4 repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…