Hello

Personal

My name is Gábor, but you may also know me as Razzie from the internet. I’m pretty much comfortable with both names.

My friends know me as a calm and rather observing kind of person unless someone hits one of my favorite topics as then I’m not afraid to stand for my ideas. I enjoy having philosophical and professional discussions. Sharing my knowledge or having greater insight into a certain topic always cheers me up.

I love developing ideas over time and then throwing them away later. One always finds me tinkering with my latest and greatest pet project. You may find a few of them below.

Ever since my childhood I’ve always been deeply interested in machines (based on the stories my parents and relatives told me) and my earlier memories are about being wildly fascinated by helicopters. Riding one still remains a life long dream of mine to this day, but I do fly RC helis regularly :)

As of my core values, freedom and creativity stand over anything else in life, but comfort comes close.

Professional

I’m a childhood self-taught developer who found his calling in creating virtual things (though I occasionally 3D print as well).

Even though it was video games that got me fascinated enough to learn coding by myself, my interests shifted towards network protocols and backend software. Having used Golang for the first time after 10+ years of C++ development was deeply influential in this.

I’ve been an active coder for over two decades and decided to share some of my pet projects with the world on Github. Many of these web services are hosted on my own Kubernetes cluster.

I take pride in my work - especially in the quality of the ideas behind an implementation - and enjoy discussions and brainstorming session with friends and co-workers.

Currently I’m only interested in part-time or deeply flexible full remote positions with focus on Golang and cloud development. Please check out my resume if you are interested in hiring me and send me an email.

My notable projects

RazChess

I’ve had a sudden spark of interest in chess as of late 2022 and decided to build my own web chess app with focus on simplicity and ease of use. Also I didn’t want to waste time convincing friends to register to [insert your favorite chess platform here]. With RazChess you just visit the website, copy the link of the session and pass it to the person you want to play with.

As weeks passed I kept adding new features like chess puzzles (mate in two steps), Fischer random (chess960) game, included chess openings encyclopedia, custom games and the ability to download your matches as GIFs. There is also Redis support to restore active games after a restart.

Try it here:
chess.gorzsony.com

Source code:
github.com/razzie/razchess

Year: 2022 - 2023
Tags: go web game

beepboop

A lightweight webapp framework that powers razbox and this website. Most of the original code was taken from razlink, but it has heavily evolved since.

Source code:
github.com/razzie/beepboop

Year: 2020 - 2022
Tags: go web

razvhost

Virtual hosting/reverse proxy with TLS termination and automatic certificate management. It supports proxying, file/directory serving and redirection using a simple config format.

Source code:
github.com/razzie/razvhost

Year: 2020 - 2022
Tags: go web

Telegram PizzaBot

Do you love pizza so much that you keep talking about it in your Telegram group chat? Now you can include this bot and with the right permissions it will respond with a pizza sticker or interesting pizza fact to any mentions of pizza.

Try it here:
t.me/razpizzabot

Source code:
github.com/razzie/pizzabot

Year: 2021
Tags: go bot pizza lib

razbox

Like Dropbox, but different - powered by beepboop

Try it here:
razbox.gorzsony.com

Source code:
github.com/razzie/razbox

Year: 2020 - 2021
Tags: go web

Riddle Solver

Riddle Solver is a terminal app designed to solve Einstein’s 5 house riddle (also called zebra puzzles in general). I think I came across this kind of riddle playing Dishonored2 first as a third option to get inside a locked place. It was written by a fictional genius game character named Kirin Jindosh and it’s clearly based on Einstein’s five house riddle. It took me (sadly) at least 30 minutes to solve on paper, but it earned me an achievement. Fast forward 3 years, I had the random idea of implementing this riddle solver, which seemed like a simple way to sharpen my Golang skills. I was wrong. Coming up with the UI design and the solver algorithm caused me quite a few sleepness nights, but I’m really proud of the result.

Riddles:
The Jindosh Riddle

Download:
riddle-solver-gui.exe
riddle-solver-tui.exe

Source code:
github.com/razzie/riddle-solver

Year: 2019 - 2021
Tags: go app

geoip-server

A web service that serves IP address geolocations in JSON format. Instead of relying on a local database it collects data from a (configurable) series of 3rd party providers, converting the results to a commom format. It supports provider fallbacks and caching.

Try it here:
geoip.gorzsony.com

Source code:
github.com/razzie/geoip-server

Year: 2020
Tags: go web

mediaserver

A web service that fetches thumbnails with title from URLs. Originally planned to use it in a chat service to prevent the tracking of users by letting them download
images directly.

Try it here:
mediaserver.gorzsony.com

Source code:
github.com/razzie/mediaserver

Year: 2020
Tags: go web

razproxy

SOCKS5 tunneled through TLS connection

Source code:
github.com/razzie/razproxy

Year: 2020
Tags: go web

uuid-server

A http server that serves random (version4) UUIDs. It uses my hybrid pseudo- and true random generator library which periodically takes seeds from random.org and uses them to generate pseudo-random UUIDs fast.

Try it here:
uuid.gorzsony.com

Source code:
github.com/razzie/uuid-server

Year: 2020
Tags: go web

GTA Online videos

I have way more playtime in Grand Theft Auto V (or GTA Online to be specific) than I would like to admit and most of that I’ve spent with friends I’ve met in the game. It became our little tradition to record funny, exciting or any memorable moments and later create videos of it. At this point there is quite a collection of those videos and I’ve uploaded the ones I made to my youtube channel. Most of the content is only meaningful to us, but I still hope viewers will find them entertaining

Year: 2015 - 2019
Tags: video game

PocceMod

I made this mod originally for my tiny private FiveM server to have some fun with friends. (FiveM is a modification for Grand Theft Auto V enabling you to play multiplayer on customized dedicated servers.) Then I thought, why not share it with others? So I published it and listened to feedback from the community to improve it even more. The project went through 2 months of intensive development (200 commits in the first month and 150 in the second) until I ended up quite pleased with the results. Most of the FiveM player base and modder community is focused on role playing, while the goal of PocceMod was always to be a standalone sandbox entertainment mod. I was the first developer who enabled players to have fun with GTA’s unused rope API in a multiplayer environment (since it’s not synced by default).

Releases:
Official PocceMod page
Github releases

Source code:
github.com/razzie/PocceMod

Year: 2019
Tags: csharp mod game

librazzie

A header-only multi-purpose library designed to help me get started with my projects. It includes frameworks for logging, events, input, memory, thread and network+serialization and has some additional stuff like: a bitset class with iterators for true and false position, stream manipulators and parsers and an easy to use random number generator.

Source code:
github.com/razzie/librazzie

Year: 2016 - 2018
Tags: cpp lib

RazTalk

A simple lobby/channel based registration-free webchat.

Try it here:
talk.gorzsony.com

Download:
raztalk_v1.0.zip
raztalk.client.exe

Source code:
github.com/razzie/raztalk

Year: 2018
Tags: csharp web app

RazzieCraft Vanilla

RazzieCraft Vanilla is Minecraft version 1.12.2 on steroids! This pack contains a ton of strictly curated mods that enhance the visuals and gameplay of vanilla Minecraft, but without breaking its charm. There are a lot of recipes for uncraftable existing items (like chain armor, slime ball, spawn eggs, etc) and a very few brand new stuff.

Download:
TechnicLauncher
RazzieCraft Vanilla mod page

Year: 2018
Tags: minecraft game mod

gglib & gglib2

GGlib and GGlib2 were libraries I used to develop between 2013 and 2017. They served as a sandbox to help me to learn about the new features of the C++11 standard. I also found a great use of them while working on other side projects. Due to some early design choices (including too heavy use of virtual function calls) I finally decided to send them into retirement and started working on the successor: librazzie.

Source code:
github.com/razzie/gglib
github.com/razzie/gglib2

Year: 2013 - 2017
Tags: cpp lib

Potato Game

PotatoGame is a procedural generated game about little potatoes with customizable AI (which was only done on paper). The goal is to have them win the game for you by gaining world domination. This was my second large game project (in terms of time and effort spent on it), but eventually I lost interest and motivation after forcing myself to work on it and focusing too much on the future outcome. I’m very proud of this project, but I gave up on ever finishing it.

Download:
demos.zip

Videos:
potato.mp4
development.mp4

Source code:
github.com/razzie/PotatoGame

Year: 2016 - 2017
Tags: cpp 3d game procedural demo

RazzGravitas

RazzGravitas is a simple multiplayer game about gravity. At the time of making it I just gave up on a somewhat larger project and I needed to give myself a smaller task that I can prove to be able to finish. The sole objective was to experiment with something simple with no regrets about design decisions and no promises about the outcome. After about a month of development it ended up having multiplayer support with competitive game rules I’m satisfied with. I consider the game finished.

Download:
razzgravitas.exe

Source code:
github.com/razzie/razzgravitas

Year: 2017
Tags: cpp 2d game

Floating Islands

Floating Islands is yet another example of my experiments with procedurally generated terrains. I developed an algorithm that takes island positions and island connections as input parameters and generates a 3D grid world using a Perlin noise internally. I also focused on the cartoonish design with edge outlining and also had an A* pathfinder algorithm set up for the little red cube.

Download:
github.com/razzie/hobby-projects/2016/floating-islands

Year: 2016
Tags: cpp 3d procedural demo

Ground Tool

The idea behind the demo was a game with floating islands. Though this game never made it to the reality, Ground Tool was born as a result of experimenting with the rendering of these islands. The user can draw a polygon border to the island and when all points are connected, the program generates an island which can be inspected by zooming and moving the camera around.

Source code and binary:
github.com/razzie/hobby-projects/2016/groundtool

Year: 2016
Tags: cpp 3d procedural demo

Hexagon

Hexagon is very similar to the Minecraft clone, but I wanted to try rendering hexagon blocks (hexagonal prisms to be correct) instead of cubes. The underlying datastructure is still a 3D grid of Perlin noise. One of the main differences is that this demo does not use textures, but has a custom shader that draws grass or rock detail based on the normal vectors.

Source code and binary:
github.com/razzie/hobby-projects/2015/hexagon

Year: 2015
Tags: cpp 3d procedural demo

Prepi

Prepi is an indie game project I was working on together with a friend. It was intended to be a rage game with puzzle elements. We took it so seriously we both quitted our jobs to be able to work on it full-time. After several month of development we reached a point where we wanted to introduce our game to the public via an Indiegogo campaign. Unfortunately the campaign failed, mostly because the lack of media attention (neither of us were expert on the topic). Also the game was probably in too early phase to show it to the public. Due to the failure of the campaign and smaller disagreements regarding the game design we decided not to continue the development.

Download:
prepi.zip

Source code:
github.com/razzie/prepi

Year: 2014
Tags: cpp 2d game

Minecraft clone

Minecraft clone is a graphics project I worked on during the final year of the university. Contrary to its name it is not a real clone, it features no game elements. My primary motivation was the recreation of a Minecraft-like rendering in C++.

Source code and download:
github.com/razzie/hobby-projects/2011/minecraft-clone-v1
github.com/razzie/hobby-projects/2011/minecraft-clone-v2

Year: 2011 - 2012
Tags: cpp 3d procedural demo

Flyff fansite

Flyff.extra.hu was a hungarian fan site of Flyff (Fly For Fun) online game. During the 3-4 years of its existence I developed more and more new features to make it a fully functional web portal. It was very interesting to see it slowly getting attention. Members started generating content in the forms of forum entries, polls, screenshots and news for the home page. The site even had a few moderators and admins. In 2010 extra.hu decided to close its free hosting service and the site went offline. I could have moved it to a different(even paid) hosting service, but most members and I have already lost interest in the game.

Source code:
github.com/razzie/hobby-projects/2007/flyff

Year: 2007 - 2010
Tags: php web

Logic Circuit Simulator

Logic Circuit Simulator was a university project I had to finish in a semester. It offers a variety of logic gates and a lot of visual customization options. Some special elements are also available, like seven-segment display, matrix display, JK flip-flop, adjustable timer and module. A selected part of a logic circuit can be converted to a module, where the circuit’s input elements (buttons, switches) become the input pins and output elements (LEDs) become the output pins of the module. Modules also support recursion.

Download:
Logic_Circuit_Simulator.jar

Source code:
github.com/razzie/LogicCircuitSimulator

Year: 2010
Tags: java app

Process Manager

Process Manager is a replacement application for the built-in Windows Task Manager with a lot of additional features. It keeps running in the background after closing the main window and can be brought back from the tray icon or by pressing Ctrl+F12.

Download:
Process Manager.exe

Year: 2008
Tags: purebasic app

Razzie Messenger

Razzie Messenger is a messenger client and server I started working on during a one-week vacation at lake Balaton (Hungary). It uses a very simple plain text based protocol for network communication, look at the picture to see it in details. (Since then I prefer binary protocols due to the ineffeciency of string parsing and large packet sizes in case of text protocols.) The user can chose a nickname and pick colors for the name and the text messages. There is no registration and password authentication, however the server rejects the connection if a nickname is already taken in the current session. It is possible to send a file to an other user: in this case the server opens a random port which receives and forwards the file. Both users have to connect to this port, but it is done automatically. This solution was necessary due to the limitations of the text based protocol.

Download:
github.com/razzie/hobby-projects/2008/razzie-messenger

Year: 2008
Tags: purebasic app

Server - client application

Server - client application is a small tool which helps creating and debugging text based network protocols. I developed it while working on Razzie Messenger and it had a great use. On the server tab the user can select one of the connected clients as a message target or just close the connection to them.

Download:
server-client.exe

Year: 2008
Tags: purebasic app

Windows Manager

Windows Manager is a reworked and extended edition of Process Manager. Besides the improved visual appearance it introduces new window tweaking options which you can see in the picture. One can for example change a sticky (always on top) window to act as a normal one.

Download:
wmanager.exe

Year: 2008
Tags: purebasic app

My open source work

(latest activity)
[razzie] broadcaster
Broadcast messages from one channel to many, with timeouts, server sent events and much more
  • [1fb9a939] Added SSE listener - Gábor Görzsöny (2024-05-05 19:29:31 +0000 UTC)
  • [0d393518] Refactored event sources - Gábor Görzsöny (2024-04-24 21:43:17 +0000 UTC)
  • [0c88cf27] Added Event interface for server sent events - Gábor Görzsöny (2024-04-24 16:16:30 +0000 UTC)
[razzie] k8s-db-operator
Kubernetes operator to provide access to shared PostgreSQL and Redis
  • [f8523168] Merge pull request #8 from razzie/dependabot/go_modules/golang.org/x/net-0.23.0 Bump golang.org/x/n... - Gábor Görzsöny (2024-04-23 09:10:06 +0000 UTC)
  • [e25327ac] Bump golang.org/x/net from 0.17.0 to 0.23.0 Bumps [golang.org/x/net](https://github.com/golang/net)... - dependabot[bot] (2024-04-23 09:09:11 +0000 UTC)
  • [edd48757] Merge pull request #7 from razzie/dependabot/go_modules/google.golang.org/protobuf-1.33.0 Bump goog... - Gábor Görzsöny (2024-03-19 09:29:37 +0000 UTC)
[razzie] gorzsony.com
The backend behind my personal website
  • [7cb26633] Merge pull request #5 from razzie/dependabot/go_modules/golang.org/x/net-0.23.0 Bump golang.org/x/n... - Gábor Görzsöny (2024-04-19 12:59:17 +0000 UTC)
  • [2cb948d7] Bump golang.org/x/net from 0.17.0 to 0.23.0 Bumps [golang.org/x/net](https://github.com/golang/net)... - dependabot[bot] (2024-04-19 12:35:08 +0000 UTC)
  • [1669c518] Merge pull request #4 from razzie/dependabot/go_modules/google.golang.org/protobuf-1.33.0 Bump goog... - Gábor Görzsöny (2024-03-13 22:16:55 +0000 UTC)
[razzie] json2go
A webapp that helps you write client libraries for JSON web APIs
  • [fc134791] Handle field names that begin with a digit - Gábor Görzsöny (2024-04-13 19:08:41 +0000 UTC)
  • [49975c14] Dump the generated code even if formatting fails - Gábor Görzsöny (2024-04-13 19:05:40 +0000 UTC)
  • [149234ec] Properly parse response content-type - Gábor Görzsöny (2024-03-24 22:44:30 +0000 UTC)
[razzie] botkit
A Telegram bot library designed to handle commands and dialogs
  • [1586b62d] Added more detail to error logs - Gábor Görzsöny (2024-01-23 14:27:08 +0000 UTC)
  • [047af366] Updated razcache - Gábor Görzsöny (2024-01-23 14:26:50 +0000 UTC)
  • [4fe0702d] Added Chat struct to interact with chats - Gábor Görzsöny (2024-01-20 12:06:18 +0000 UTC)
[razzie] beepboop
A lightweight webapp framework that powers razbox
  • [8f1460f0] Merge pull request #1 from razzie/dependabot/go_modules/golang.org/x/crypto-0.17.0 Bump golang.org/... - Gábor Görzsöny (2024-01-16 14:01:38 +0000 UTC)
  • [e8021274] Bump golang.org/x/crypto from 0.6.0 to 0.17.0 Bumps [golang.org/x/crypto](https://github.com/golang... - dependabot[bot] (2023-12-19 00:11:02 +0000 UTC)
  • [5cae9591] Updated dependencies - Gábor Görzsöny (2023-03-03 21:53:51 +0000 UTC)
[razzie] commander
Execute Go functions from CLI or from a chatbot
  • [3adbc129] Added Commander tests - Gábor Görzsöny (2024-01-09 23:33:56 +0000 UTC)
  • [cac1677c] Added support for varargs resolved from context - Gábor Görzsöny (2024-01-09 23:00:15 +0000 UTC)
  • [f7fd4363] Added state to ResolverContext to be used by resolvers - Gábor Görzsöny (2024-01-09 22:37:02 +0000 UTC)
[razzie] hobby-projects
A collection of my notable hobby projects
  • [ae751eb4] Updated/added 2023 projects - Gábor Görzsöny (2023-12-25 11:43:30 +0000 UTC)
  • [22964986] Added 0x40hues - Gábor Görzsöny (2023-07-30 16:17:01 +0000 UTC)
  • [91cc0e73] Added s3proxy - Gábor Görzsöny (2023-02-05 00:27:08 +0000 UTC)

My open source interests

(latest starred)
[charmbracelet] charm
The Charm Tool and Library 🌟
  • [f74c9056] docs: fix typo (#272) - Drewry Pope (2024-03-13 21:58:01 +0000 UTC)
  • [222ae769] feat(deps): bump golang.org/x/crypto from 0.18.0 to 0.21.0 (#264) Bumps [golang.org/x/crypto](https... - dependabot[bot] (2024-03-04 20:41:29 +0000 UTC)
  • [faf26abb] feat(deps): bump github.com/meowgorithm/babylogger from 1.2.0 to 1.2.1 (#259) Bumps [github.com/meo... - dependabot[bot] (2024-03-01 20:46:31 +0000 UTC)
[earthboundkid] requests
HTTP requests for Gophers
  • [9ab79a0c] Bump golang.org/x/net from 0.17.0 to 0.23.0 (#109) Bumps [golang.org/x/net](https://github.com/gola... - dependabot[bot] (2024-04-19 12:19:00 +0000 UTC)
  • [4d62ef5b] README: Update logo - Carlana Johnson (2024-02-24 02:17:42 +0000 UTC)
  • [c2d8b862] README: Coveralls uses earthboundkid now - Carlana Johnson (2024-02-24 02:02:18 +0000 UTC)
[muesli] smartcrop
smartcrop finds good image crops for arbitrary crop sizes
  • [f1935b10] Bump actions/setup-go from 3 to 4 Bumps [actions/setup-go](https://github.com/actions/setup-go) fro... - dependabot[bot] (2023-03-16 12:59:11 +0000 UTC)
  • [423d71eb] Bump golang.org/x/image from 0.0.0-20190802002840-cff245a6509b to 0.6.0 Bumps [golang.org/x/image](... - dependabot[bot] (2023-03-06 13:05:12 +0000 UTC)
  • [acfaf3f1] Bump actions/setup-go from 2 to 3 Bumps [actions/setup-go](https://github.com/actions/setup-go) fro... - dependabot[bot] (2022-04-11 13:56:24 +0000 UTC)
[muesli] beehive
A flexible event/agent & automation system with lots of bees 🐝
  • [d636b697] fix mumblebee crashing on server message - Keridos (2021-12-13 19:04:42 +0000 UTC)
  • [dfc6fd3b] Discordbee crosspost (#377) - LecygneNoir (2021-06-13 10:57:00 +0000 UTC)
  • [2fce343b] Fix goreportcard badge - Christian Muehlhaeuser (2021-05-19 04:40:25 +0000 UTC)
[eliben] raft
:rowboat: Raft implementation in Go
  • [70b571d3] part3: bump go version in go.mod, remove deprecated rand.Seed, use built-in min - Eli Bendersky (2023-11-26 03:18:34 +0000 UTC)
  • [47f8bd74] part2: bump go version, use built-in min(), remove deprecated rand.Seed - Eli Bendersky (2023-11-26 03:15:16 +0000 UTC)
  • [26e1cb03] part1: bump Go to 1.21, clear lints, remove deprecated rand.Seed call - Eli Bendersky (2023-11-26 03:13:25 +0000 UTC)
[ariga] atlas
Manage your database schema as code
  • [653e0f9c] sql/postgres: unset default search_path (#2776) When operator on realm-scope we expect all objects ... - Ariel Mashraki (2024-05-12 18:20:58 +0000 UTC)
  • [4a5385a5] sql/postgrescheck: check error returned (#2775) - Giau. Tran Minh (2024-05-12 13:07:38 +0000 UTC)
  • [4288f8a1] sql/internal/sqlx: support detecting if table resources depend on function (#2774) - Ariel Mashraki (2024-05-12 10:41:51 +0000 UTC)
[coocood] freecache
A cache library for Go with zero GC overhead.
  • [eadf666f] Add GitHub Actions workflows (#135) Add test and lint workflows, and remove .travis.yml. - ichizok (2024-04-12 15:10:32 +0000 UTC)
  • [1add4dc8] Add warning that Peek functions return expired values (#133) - pflanagan-cs (2024-03-26 03:30:56 +0000 UTC)
  • [64a2e400] fix: typo (#131) - guangwu (2024-01-22 03:28:50 +0000 UTC)
[Snapchat] KeyDB
A Multithreaded Fork of Redis
  • [603ebb27] I think we want ARM's program counter here. Fixes #797 - michael-grunder (2024-03-21 17:50:35 +0000 UTC)
  • [0731a050] build: Add support for linking against a system libhiredis/libhiredis_ssl Add a new USE_SYSTEM_HIRE... - Guillem Jover (2024-03-22 23:23:16 +0000 UTC)
  • [d67c6586] build: Add support for linking against a system librocksdb Add a new USE_SYSTEM_ROCKSDB make variab... - Guillem Jover (2024-03-22 23:08:14 +0000 UTC)