Skip to content
View kartva's full-sized avatar

Organizations

@unicode-org

Block or report kartva

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
kartva/README.md

I'm interested in designing performant and delightful software. I love open-source and have contributed a bunch. I'm looking for Summer 2025 internships. If you find what I've done cool, I'd love to work with you. Feel free to contact me if you'd like to chat about something I've worked on or might find interesting.

Work / Open-Source Contributions

I previously worked on icu4x, an open-source i18n library by the Unicode consortium, and Librarian, a bioinformatics quality control tool. I've contributed feature patches to Rust Analyzer, Rust Clippy, Wine, OpenSearch and Zola.

Research

I'm broadly interested in programming languages, distributed systems and operating systems. My current work is in creating optimizations for Mergeable Replicated Datatypes.

A chronological ordering of stuff I've done / am doing

Spring 2025

  • (Relevant) classes:
    • Graduate Programming Languages. Assignments include lots of Coq / Rocq.
    • Graduate Theoretical Computer Science Toolkit. Topics include convex analysis and optimization, spectral methods, concentration inequalities, and discrete Fourier analysis.
    • Graduate Hardware Security. Projects include:
      • Writing a Trusted Execution Environment for a Risc-V softcore.
      • Using a Chipwhisperer Nano for side-channel attacks.
    • Graduate Robotics Software Engineering.
    • Compilers with Tiark Rompf (of Scala fame). Assignments include lots of compilers written in Scala for a Scala-like language to x86.

Fall 2024

  • I created keymashed, an interactive exhibit at Purdue Hacker's BURST. It contains interesting things, like:

    • a JPEG-like lossy codec written from scratch.
    • a realtime video streaming protocol and associated netcode.
  • filed a bug report for the Linux kernel's memory management subsystem.

  • employed as a Research Assistant working with Prof. Suresh Jagannathan working on optimizing MRDTs.

  • employed as a Teaching Assistant for Data Structures.

  • employed as a developer teaching assistant for Programming in C. I created test modules for course assignments.

  • (Relevant) classes:

    • Programming Languages. Assignments included:
      • writing lots of interpreters in OCaml (I enjoyed all of them).
      • writing an interpreter for a functional language with type inference and checking.
      • verifying simple programs in Dafny.
    • Systems Programming. Assigments included:
      • a malloc implementation. I made mine robust enough to run Chrome.
      • writing a shell with pipes, quoting, subshells, stream redirection (in C).
      • HTTP/1.1 web server with authorization, cgi-bin modules and dynamic module loading (in C).
      • (team project) a graphical system monitor (à la top). (in C++ and ImGui).
    • Analysis of Algorithms. Assignments included:
      • proving the correctness of dynamic programming and greedy algorithms.
      • creating information compression schemes and comparing against entropy.
      • proving the NP-completeness of given problems via reduction to a known NP-complete problems.
    • Independent Study in Embedded Systems with Prof. Douglas Comer, of TCP/IP fame.
      • designed audio streaming system with Raspberry Pis for concurrent audio playback.
      • wrote an RTP-like protocol for streaming audio over UDP.
  • Went to the Midwest Programming Languages Summit at UChicago and met many interesting people!

  • Attended every PurPL (Purdue Programming Languages) weekly seminar.

Summer 2024

Spring 2024

Fall 2023

  • (Relevant) classes:
    • Programming in C
    • Foundations of Computer Science / Discrete Math
    • Honors Multivariable Calculus
    • Independent study in the C++11 memory model with Prof. Suresh Jagannathan. I explored tactics for designing performant and correct lock-free algorithms. Report available on request (until I get around to publishing it).
  • Attended nearly every PurPL (Purdue Programming Languages) weekly seminar.

Before University

  • I started working on Librarian with the Babraham Bioinformatics Institute in 2020. My work on Librarian was published here first in 2022, and then the revision in 2024.
  • I briefly worked with Trestle Labs on computer vision using OpenCV in winter 2023.
  • I was a competitive programmer and qualified for the Indian National Olympiad of Informatics (INOI) in 2020, 2021 and 2022. I studied Antti Laaksonen's Competitive Programmer's Handbook, from which I was inspired to write my first blog post on segment trees.

My blog - it's not completely up to date.

Pinned Loading

  1. keymashed keymashed Public

    Mash! your keyboard to make your internet better - installation at Purdue Hackers' BURST

    Rust 32

  2. Librarian Librarian Public

    A tool to predict the sequencing library type from the base composition of a supplied FastQ file.

    Rust 7 4

  3. icu4x icu4x Public

    Forked from unicode-org/icu4x

    Solving i18n for client-side and resource-constrained environments.

    Rust

  4. memtalk memtalk Public

    A utility for two processes to talk to each other via a POSIX shared memory object.

    C 1

  5. k-lox-jit k-lox-jit Public

    JIT compiler for Lox (Kartavya's Version)

    Rust 1