npassonβv3

Website of Nicholas Passon

About me

Hi, I'm Nicholas! I'm a CS student and I travel around the world quite a bit to go to concerts. In case you're not interested in code, I have a blog! (which is pretty empty right now, I apologize)

You'll find my current and finished projects below, as well as my contact section and a few links for you to click. If you have any questions, feel free to contact me. Please don't send any sensitive data via the given mail address, as that email is not secure. Make your intentions clear and we can find a secure channel.

I've recently moved from Twitter, and my only social media for the foreseeable future will be Mastodon, where I can be found at @npasson@home.social. (I don't have any other social media.)

This site does not store cookies, does not run any trackers (or generally any JavaScript), does not include tracking pixels, does not use analytics, etc. Basically, I actually respect your privacy here.

Projects

Fraction Type


C++ math library

The Fraction library allows lossless floating-point division and multiplication within bounds (currently 0.00000000000000000010842022 to 9223372036854775807). The Fraction type can completely replace double in your code:


    Fraction a = 15;
    Fraction b = 0.2;

    Fraction c = b/a;
    Fraction d = a.pow(3)*b+c;

    printf("d is %f", (double)d);
				
Source

The library is licensed under the GNU AGPL License.

cpp

MosesPlan


Browser addon for TU Berlin 'Moses' service

MosesPlan is a browser addon available for Firefox and Chrome that integrates with the system Moses that is used by the TU Berlin to create a schedule for students. With the addons, students are able to create and persistently save their own calendar entries and have them displayed in the system. The addon also includes a function to circumvent weaknesses of the system, enabling students to automatically load seminar calendar entries that have not yet been added to the Moses system.

js

Project Workflow Scripts


JIRA/Fisheye/Crucible/Gitlab library

The Project Workflow Scripts (working title) offer a way to turn Software Development with JIRA in combination with GitLab (especially Web Development) into something that focuses on work and reduces the amount of workflow errors you can make to almost zero. The files are fully functional, the only thing missing is the documentation. The documentation will be provided in LaTeX as a .tex file in Q3 2019.

The library is licensed under the GNU AGPL License .

php

Docker Webserver


Tiny docker-compose config for new web projects

Ever wanted to program a PHP website, and you were told to download some LAMP or WAMP stack, then copy your files over to the respective folder, then if you wanted to switch your projects, you had to either copy the files out or adjust the config settings in your webserver to point elsewhere?

This ends here.

Install Docker, which honestly you should have installed for other ventures too, and you're ready to go! Simply clone the repository, adjust a single line in a file to point at your web files, and you can start up and shut down your local web server with a single command! Windows users can even create desktop shortcuts for it. And the best thing is that, should you make yourself more familiar with docker-compose, the config files are fully extendable to suit your needs.

The library is licensed under the MIT license.

docker

Aim: Cyber II


Map for the game Counter-Strike: Global Offensive

Cyber II is a map created for Counter-Strike: Global Offensive set in a fictional city, and uses the Cyberpunk genre theme to create a feeling of a neo-futuristic Japanese downtown city center. It is designed for 1v1 or 2v2 play between players and does not feature an objective in terms of Classic gamemodes.

Cyber II can be downloaded on the Steam Community page.
You need a Steam Account (Steam TOS) and Counter-Strike: Global Offensive to download the file.

The map was created with the Valve Hammer Editor and is available in the BSP map format.

Aim: Cyber II © 2017-2019 Nicholas Passon. All rights reserved. The source code of the map is not open to the public. You are not allowed to copy, decompile, modify, reverse engineer, or create derivative works out of any part of the downloadable map files without my written consent.

csgo

RayTracer


C++ simplistic raycaster

A ray tracing program. This is not a project to learn from. It's terribly slow and the only reason it exists is because my mind went "you should definitely try to write a ray tracer on your own" one day.

The program is licensed under the GNU AGPL License.

cpp

BigInteger


C++ math library

The BigInteger library allows arbitrarily-sized integer types (up to the memory limit) and operations between them. It is still in development, but the development versions can be accessed.

Feature tracker

The library is licensed under the GNU AGPL License.

cpp

CONTACT

For general enquiry, use this address:

contact at <this domain>

You can also contact me on Twitter.

You can download my public key here, the hashes are as follows:

  • SHA256: 9C9C3D3A87755DA2BFFDD6BF9C7D8826377B52814294C1DE5A779538633CBDBA
  • SHA384: 0DD7FCEB5E2649682E615B0073D04846689C7936C082E6D7A9DE58B5C9A8DFB96A7D434534F9DD77C472A5CA9A1A4461
  • SHA512: 46C23003BDD301F3510148E650009E7B786F3A5F0835223B10FD64C4693E2952202BCD3FA92B43404A6497F485B27537AD85AF8BBD7CBFB3CBF49837C0DFE84F