Portfolio
This portfolio is divided into two parts: projects written in Haskell and projects written in C. Both are listed approximately in the order of importance. Haskell projects are newer and, due to its nature and my skill at the time of writing, better. C projects are older and their code quality is inversely proportional to their age.
#developerslv
IRC bot haskell, stack, irc-client, 2016 mar
It’s the «#developerslv» channel bot that is a great excuse to code haskell.
Uses regex-tdfa, lens, maybes and eithers, megaparsec, telegram-api, http-client-tls.
Can be compiled with either nix or stack.
Currently deployed to a droplet inside a NixOS-built container(read more), together with the open_nsfw
neural network, also wrapped in a container.
Violin pitchfork haskell, fft, sox, 2015 jun
This program sounds a pitch for tuning tuning your violin that listens and determines which string you’re trying to play and responds with the correct pitch. Feedback loops remain undetected.
Sudoku solver haskell, 2014 nov
For educational purposes, but the code is nice, so I’ll include it.
Heat equation solver haskell, repa, imagemagick, 2014 dec
Main reason of creation was the generation of cool gifs.
Font random haskell, fc-query, 2017 jul
Generates random characters from the set of available glyphs found in fonts given as input. The usual random text generation techniques are either overrepresenting unrenderable characters or its output spans a very limited character set. Sample output: «ɷȣȥʔɜǜ¥ȷ¢řŲɜȸúĮǖ».
ELF executable crypter POC linux, c, 2012 dec
Making a PE crypter was an old goal of mine, but having become a linux user, PEs were no longer interesting. The code doesn’t use libraries thus is a little messy, but it works most of time.
BF language interpreter linux, c, asm, 2011 aug
Created with the intent of learning about asm.
Simple motion sensor linux, c, pthread, ruby, 2012 jul
Plays sounds whenever detects changes in light above threshold.
SOCKS5 proxy server linux, c, tcp, 2010 jun
Implements some methods of the SOCKS5 protocol. Works in conjunction with firefox.