Projects
I have ceased updating this page.
Here is a non-exhaustive list of my projects. My research work can be found here.
- Inventory Management Portal; November 2019
- Designed and implemented a portal for warehouses to effectively manage their inventory using Python, Django and SQLite.
- A browser-based graphic interface was also provided, for ease of access.
- SAP Computer; February - March 2020
- Implemented and tested the simple-as-possible computer, a basic model of a microprocessor in Verilog, a hardware description language.
- Developed an understanding of how a microprocessor works, interacts with memory and other parts of the system like input and output.
- Multiplayer Quiz Game Show; March - April 2020
- Designed a multi-player p2p network-based game using Pygame for graphics and TCP sockets as the network component.
- Reinforced the concepts of socket and network programming through a real-world problem.
- IAS Machine; August - September 2020
- Designed the processor and memory of the first electronic computer built at the Institute for Advanced Study (IAS), Princeton using Java.
- Developed a solid understanding of the von Neumann architecture and other concepts of computer architecture and organization.
- Logistics Simulation; September - October 2020
- Designed and implemented a logistics handling system to route packages from one location to another, using Java.
- Developed a good understanding of the object-oriented style of programming, and the GUI widget toolkit Swing.
- UCINET DL file reader; October - November 2020
- Used concepts of object-oriented programming in C++ and read in .dl files and performed required manipulations and wrote back into the file.
- Personal Data Store; August - November 2021
- Designed and implemented a database in C to store information about a person.
- CRUD operations were carried out on this database.
- Further, JDBC (Java Database Connectivity) was also used to interface MySQL with Java, for an enhanced version of the project.
- Kaggle Malware Prediction Competition; October - November 2021
- Competed in a Kaggle competition for malware classification. Carried out batch-wise processing due to the big data nature of input, tried out various strategies for high classification accuracy and finally settled on a LightGBM setup.
- Data Processing using Hadoop MapReduce; February 2022
- Processed, analyzed big data sources (Wikipedia entries) and ran semantic queries on it using Hadoop MapReduce, a distributed computing algorithm, in Java.
- Edge Computing using EdgeX Foundry; April 2022
- Created a mood lighting setup for a room using a mock setup of LEDs and Raspberry Pi (hardware end) and EdgeX Foundry, Docker and Python (software end).
- Computing was carried at the edge of the network, free from network constraints and latency.
- Course Allocation System; April 2022
- Implemented a multi-threaded educational server and client application.
- Used semaphores to protect data members while they were being accessed.