intro to chestnut
ok first off, chestnut is NOT THE NUT, like NOT the actual food; its a residence at UofT, eish?
yeah i lived there for 2 years, in both my first and second year; during my second year i was working as something called an EPA (Engineering Programming Ambassador), super fancy way of saying ‘guy who does event planning with some other people who do the same thing’.
little did i know that i’ll get to code things in this experience and also get rights to call it a swe internship; teehee big time.
what i did
so as i said, this role was mostly event planning and being SoCiAL, i wanted to push myself a little and ended up overdoing that this time, i love being social but not to the degree of being fake; that degree is kinda needed in roles like this where literally everything is just smiling at people who are walking by and completely ignoring ur existence, anyway, let’s talk software: i’m half full-stack swe and half embedded swe so i coded a website for chestnut to use, there wasn’t any embedded use-cases here but if there were then trust me i’d have tried something there too.
the website i made was a qr code generator, i’ll explain how it works here; the rest of the time in this internship was spent being social, which is actually not that bad of a thing ;)
i’m kinda happy that my supervisor was very lenient (yes lovely person) and they called me a swe at the end of this internship, omg, upgrade? nah downgrade cuz it means being less social ;0;0;0
rng
its not rng (random number generation) alone but there are many ways in which we can make a unique url for use in shortening; we also need to consider ip configurations and dns for redirecting properly and seeing how that would work in these contexts but WHO CARES i’m not gonna bore u this much; i can if u want, contact me and i can yap abt this for days
so using some model i programmed in python, i was able to get hold of this generator that could make proper aliases for url usage that are unique and also relevant to this use case in a direct way.
url
i fortunately already has access to a 4 letter url, the legal limit for a url is 3 letters so i was pretty close ;)
qr code
used javascript qr code genrator and did some magic so that it could be a version 1 qr code and be as simple as possible, peewoop
lifetime
allowed users to implement lifetime and other techniques to make sure that the character space for keeping v1 qr codes are not completely used up (which would suck)
security
BRO I GOT HACKED
new update
fixed it using some complicated things i never knew of until this internship and it seemed to work so pushed it and gave the residence access to it once again
UI fixes
made it look better cuz my supervisor said some things and i just made it insanely nicer then
official handover
gave it to them and they used it in some posters i could see around the residence hall and it felt kinda nice to have them use it for this
why it matters
this lowkey wasn’t even a swe internship but i managed to make it one and get my supervisor to agree for me branding it as one (yay), shows importance of doing what u love regarldess and finding some usecase where what u love can be implemented.