Skip to content
View ACrispyCookie's full-sized avatar

Highlights

  • Pro

Block or report ACrispyCookie

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.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

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

Report abuse
ACrispyCookie/README.md

Jason Nikas profile header

GitHub contribution snake

About me

Typing SVG

website · linkedin · email · repositories

I started programming through Java and Spigot, mostly because I wanted to build my own Minecraft plugins instead of only using what already existed. I fell in love with that process almost immediately. Taking an idea, turning it into a working system, and then digging deeper to understand how every piece behaved. After around five years of plugin work, server tooling, APIs, and gameplay systems, that curiosity had grown into a real passion for exploring systems, which I carried into my Electrical & Computer Engineering studies at the University of Thessaly, initially expecting to follow mostly the software side of the field.

That changed quickly once I took the more hardware related courses. Digital design lab, computer architecture, and FPGA development made the lower layers feel just as interesting as the software field. Since then, I have liked exploring systems from top to bottom. How code runs, how hardware executes it, and how the layers in between shape behavior.

Outside coursework, I became interested in infrastructure and networks, which led me to build my own homelab. It gives me a place to try new technologies properly through deploying services, wiring automation together, experimenting with networking setups, and learning from the details that only show up when something is actually running.

I have also explored security from multiple angles, including hardware security and wireless communications projects (and even when homelabbing to some extent), while continuing to work on graphics and interactive systems through Minecraft, OpenGL, visual demos, and simulation work. More recently, low-level software and HPC pulled me toward GPU programming, CUDA optimization, and a larger collaborative project: building our own GPGPU around RISC-V cores with software support.

Currently working on:

  • GPGPU — RISC-V-core GPGPU with software support.
  • Homelab — self-hosted infrastructure, automation, and networking experiments.

Selected work

GPGPU project card HPC project card
Distributed systems project card Hardware security project card
Digital systems lab project card Minecraft and Java ecosystem project card

Project constellation

Area Repositories / work
Computer Architecture GPGPU, ECE494 Microprocessor Design
HPC / CUDA ECE415 High-Performance Computing
Distributed + OS ECE348 Distributed Systems, ECE318 Operating Systems, ECE321 Concurrent Programming
FPGA / embedded / digital ECE333 Digital Systems Lab, ECE340 Embedded Systems, ECE219 Computer Organization
Security + wireless ECE455 Hardware Security, ECE436 Wireless Communications
Graphics ECE433 Computer Graphics
Minecraft / Java tooling DynamicDisplays, CrispyPluginAPI, Colony plugin repos
General tooling KoukBot, AutoRapidTest

Technologies and activity

C, C++, Python, Java, JavaScript, Bash, Maven, Gradle

Linux, Docker, Git, MySQL, MongoDB, PostgreSQL, Redis, SQLite, Cloudflare, Raspberry Pi, Nginx

RISC-V   CUDA / NVIDIA   OpenGL   AMD / Vivado / Vitis   Proxmox   Spigot   GNU Radio / GNU tooling

RISC-V · Verilog/SystemVerilog · Vivado/Vitis · MATLAB · GNU Radio/SDR · OpenMP/OpenCL
ARM/Zynq · MIPS assembly · POSIX/pthreads · FUSE · Django · Spigot/Bukkit/Paper · Bungeecord

GitHub contribution profile details

Pinned Loading

  1. GPGPU GPGPU Public

    Project of my Parallel Computer Architecture course

    Python

  2. ECE348-Distributed-Systems ECE348-Distributed-Systems Public

    ECE348 Distributed Systems coursework with UDP request/reply, causal-total group communication, a cached network file service, and a SimpleScript distributed runtime.

    C

  3. ECE415-High-Performance-Computing ECE415-High-Performance-Computing Public

    ECE415 High-Performance Computing coursework with CPU optimization, OpenMP, CUDA kernels, profiling, and an optimized N-body simulator with visualization.

    Cuda

  4. ECE433-Computer-Graphics ECE433-Computer-Graphics Public

    ECE433 Computer Graphics coursework with OpenGL/GLUT rasterization, polygon algorithms, and an extended interactive 3D house project.

    C++

  5. ECE436-Wireless-Communications ECE436-Wireless-Communications Public

    ECE436 Wireless Communications project implementing configurable ath9k MAC-layer unfairness and WiFi jamming experiments with Linux backports and NITLab automation.

    C

  6. ECE333-Digital-Systems-Lab ECE333-Digital-Systems-Lab Public

    ECE333 Digital Systems Lab coursework with Verilog FPGA designs for UART, VGA graphics, SPI accelerometer interfacing, and an accelerometer-controlled VGA demo on the Nexys A7.

    Verilog