Highlight: GUI CLI Lib Web C C++ C/C++ Go Python Haskell Lua Pascal Javascript PHP Bash Kattis
Quick links:
Texts:
My bigger programs and libraries:
  • Botes - a plaintext notetaking GUI app I wrote for personal use (Free Pascal, Lazarus).
  • Blaxor - a hex viewer that can handle large files (C++, FLTK).
  • zipsavings - show information about archive file's efficiency (Python, calls 7z and my csoinfo executables).
  • Viewpic - a simple image viewer (Python3, Qt5, PySide2).
  • LuaConsole - an in-game style dev console for Lua (C++, SFML, can be easily used with other libs).
  • LuaConsoleProgram - example program using above console (C++, SMFL).

My self-contained pure C utilities:
  • analyzepng - print information about a PNG file's chunks and such.
  • muhdnscache - prints contents of your Windows DNS cache using an undocumented function in dnsapi.
  • binarypic - convert binary file to/from greyscale PNG to show patterns, swathes of one value, etc. at a glance.
  • topng - convert an image to png (Image Magick and ffmpeg can do the job too if you have them).
  • pixelsum - decode an image file and hash its pixels (to make sure an optimized, etc. image is 100% the same).
  • csoinfo - print info about a CSO file's compression (Windows only, can easily be made cross-platform).
  • bliso - rip a CD/DVD to an ISO file (direct byte by byte copy, Windows only, use dd on Linux).
  • rampin - memory maps and touches files to ensure they're cached in RAM (Windows only, for Unix alternative see vmtouch).
  • shell - a very minimal Linux/Unix shell, just as the one I once wrote in C class, but this one was written afresh.
  • blawork - simple API with pure C fallback around few threading APIs to offload one function to a thread.
  • blasha1 - a pure C SHA1 implementation, made for fun and to learn and experiment.
  • blawmain - a header that wraps main/wmain to make it easier to write portable UTF-8 args aware CLI programs.
  • colors - pipe to color same words same colors randomly to make it easier to see common words.
  • snore - a command that works like sleep but prints a dot or a countdown number every second.
  • blammap - wrapper for read only memory mapping a file (WIP).
  • sack - a struct to keep track of pointers and free them all at once to simplify code dealing with many small buffers.
  • log - small multi-threaded logging library (WIP).
  • blahex - single header file to convert binary to and from hex string in C

Games I've made:
  • Man - clone of PacMan, written for a class (C++, SFML).
  • Missles - clone of classic Missile Command game, written for gamedev.net 2018 new year challenge (Lua, LOVE2D).
  • Routing Game - clone of an old game I had that I forgot the name of (C++, SFML).
  • Heart - a rythm and color matching game inspired by a YouTube video of someone's color matching game (C++, SFML).
  • Snek - clone of the classic Snake game (C++, SFML).

Other things I've made or done:
  • Unicode Analyze Page - webpage to analyze Unicode string and script to generate JSON data for it, click here to see the page in action.
  • Ascii Art Packets - create an ASCII diagram suitable for being in a source file comment from a packet bit fields description.
  • Brújula Prompt - a light git prompt that calls no external programs so it's snappy on Windows where that's heavy
  • stbi crashing bug report - credit for finding a crashing bug in stb_image (accessing an uinitialized pointer).
  • SFML WAV bugfix - diagnosed and fixed a WAV bug (cracking/pop due to reading metadata as samples) in SFML.
  • AngelLoader bugfix - found and fixed a Unicode conversion bug in the C++ dll injected into the game.
  • Windows ramdisk in duf - noticed that duf on Windows doesn't recognize the ramdisk I use and helped add this feature.
  • Polyglot Request - a tiny polyglot file using requests, valid as both Lua and Python.
  • AchBall translation - translated AchBall into Polish (credited as FRex).
  • Nightmare of Decay translation - first translation into Polish (credited as Błażej Roszkowski, later revised by another translator).
  • FoxRaycaster - Wolf3D style raycaster, based on a tutorial.
  • Fox2 - same as above but optimize and with an NVidia CUDA path, written for class.
  • FizzBuzz - a collection of solutions of popular FizzBuzz problem in few languages.
  • Euler - Haskell solutions to few Project Euler problems, done to get used to Haksell for my class at the time.
  • cmvdecode - Python script to decode Creative's old CMV "video" format.
  • brender - a basic 3D software renderer, with perspective correct texturing, written for class.
  • Bla Paste Bin - 1-file PHP pastebin-like webapp. A PHP Hello World basically. Just for fun, not for real use.
  • Hashell - small shell in Haskell, has pipes and works on Windows and Linux. Written for a class.
  • HackerRank - my HackerRank profile where I sometimes do tasks for fun or to show someone.
  • minmaxbench - example code I wrote to show someone how to use AVX2 SIMD in C and C++ via intrinsics.
  • PyHashBench - simple script to compare several built in and third party hashes for speed on big amounts of data.
  • busybox bug report - report of low performance of sha1sum I ran into when making and testing my SHA1 implementation.
  • ZSTD cli extra output - commit and issue that led to adding displaying the content xxhash in zstd cli when scanning .zst file.
  • sso-check - small program to test C++ std::string short string optimization (SSO) limits.
  • Fullscreenizer - my fork of the Fullscreenizer program by Runtime Terror.
  • VidDuration - a Python3 script to run ffprobe to show durations and sizes of media files.

My Greasy Fork scripts for YouTube and others:
My Kattis related stuff (I usually try to go for shortest code):
  • My Kattis Account
  • Kattis Raid Teams - very fun problem someone gave me and challenged me to get into top 10, so I got into top 1.
  • Kattis Shopping List - another fun problem where I managed to get top 1 in smallest code (Python3, down to #2 in February 2023) and speed (C++).
  • Kattis Script - a script to aid in solving problems. It downloads input and output examples and runs the solution against them.
  • Kattis Stats Links - a script to add more convenient links to stats for each problem.

Very handy programs I use and recommend (not made by me):
  • ffmpeg (and ffprobe) - all around tool to work with audio and video files, has convenient statically linked Windows builds.
  • ImDisk - a RAM disk for Windows.
  • Icaros - Windows Explorer extension that provides info and thumbnail for mkv, webm, etc.
  • optipng - a lossless PNG optimizer, useful for websites, sharing PNGs, shipping game assets, etc.
  • oxipng - another lossless PNG optimizer, with threading and more options (including zopfli).
  • busybox-w32 - Windows build of BusyBox, very useful, rename to ash.exe to launch that shell on doubleclick.
  • GNU Units - very useful tool for units and currency conversions.
  • WinDirStat - GUI tool to visualise disk usage (faster alternatives that use NTFS MFT exist).
  • Everything - GUI Windows filename search engine that provides instantaneous results.
  • Diskovery - a neat windows GUI tool to show all the disks and detailed information about them.
  • CrystalDiskMark and Info - two tools, one to benchmark drives, another to list their information.
  • Sumatra PDF - a nice, light open-source PDF (and other format) viewer for Windows.