--- title: Works language: en translationKey: works disable_feed: true --- I am a web backend developer, though I'm open to experiment in other fields as well. You can look at my projects on: - [GitHub](https://github.com/Huy-Ngo/) - [Disroot Git](https://git.disroot.org/huyngo) - [source hut](https://sr.ht/~huyngo/) See my CV in PDF format [here][cv]. # Education - Bachelor: University of Science and Technology of Hanoi, 2018-2021 # Free Software work I support free software by writing it and contribute to some projects within my ability. Below are some projects I've participated in development. ## Web apps ### Acanban [Acanban][acanban] is an in-development academic-oriented project management system. So far, we have implemented only basic project collaboration features. There is much work to be done in the future. ## Libraries ### Palace [Palace][palace] is a 3D audio library in Python. It is a wrapper around OpenAL for Python, expecting to provide developers with modern and intuitive utilities for audio processing. See demo in the video below (or see it on [my Peertube][palace-demo]):
## Chat bots ### Discord meme bot [Meme bot][discord-meme-bot] is a meme bot for discord using Reddit API. I have transferred the repo ownership to my friend [dinhanhx][dinhanhx-gh] ## Game ### Axuy I added face culling and added texture to the 3D shooting game [axuy][axuy] by [McSinyx][cnx]. ![axuy](axuy.png) The game uses [palace](#palace) for 3D audio by the way. ## Packaging ### Floating cheeses > The [interplanetary wheels][ipwhl] (or floating cheeses) are platform-unique, > singly-versioned Python binary distributions backed by IPFS for security and > reproducibility. I occasionally participated in packaging for these distributions. ### dictd I am [packaging][alpine-dictd] [dictd][dictd] for Alpine Linux. It is unfortunately not done yet. ## Miscellaneous - [YAltaCV], a Python script that generate AltaCV-themed CV from YAML data - [cov-news][cov], a scraper for COVID-19 related news - [Wikt CLI][wikt-cli] is a CLI Wiktionary client using its API. - [GenWord][genword] a word generator on Android, alternative to [its JS equivalent][gen] - [IPA keyboard layout][ipa] for FlorisBoard - [One-character PR][publiccode] for Public Code standard # Non-free software work Not all of us can afford the luxury of being able to work full-time as free software developer. I still appreciate my time working in a non-free software company for the knowledge and experience I gained from there. ## Internship During my internship at VCCloud, I have worked with several problems related to mail, namely: - disposable mail service - mail tracking[^1] - mail searching [cv]: https://raw.githubusercontent.com/Huy-Ngo/my-cv/master/huy-cv.pdf [palace]: https://git.sr.ht/~cnx/palace [acanban]: https://github.com/Huy-Ngo/acanban [YAltaCV]: https://github.com/Huy-Ngo/YAltaCV [discord-meme-bot]: https://github.com/dinhanhx/discord-meme-bot [dinhanhx-gh]: https://github.com/dinhanhx/ [wikt-cli]: https://git.sr.ht/~huyngo/wikt-cli [genword]: https://git.sr.ht/~huyngo/GenWord [cov]: https://github.com/Huy-Ngo/cov-news [gen]: www.zompist.com/gen.html [ipwhl]: https://sr.ht/~cnx/ipwhl/ [alpine-dictd]: https://lists.alpinelinux.org/~alpine/aports/%3C20210504151538.25378-1-huyngo%40disroot.org%3E#%3C20210505015044.lqjmzxevnqwdggux@linux.local%3E [dictd]: https://sourceforge.net/projects/dict/files/ [axuy]: https://sr.ht/~cnx/axuy/ [cnx]: https://cnx.srht.site/ [ipa]: https://github.com/florisboard/florisboard/pull/560 [publiccode]: https://github.com/publiccodenet/standard/pull/439#issuecomment-774983961 [^1]: I feel guilty working with a privacy-invading feature, but given the context that it is business email, it probably does not matter much. [palace-demo]: https://video.ploud.fr/videos/embed/e68c43ca-f4bd-4af6-840f-1405e6163735