about summary refs log tree commit diff
path: root/content/works.md
diff options
context:
space:
mode:
Diffstat (limited to 'content/works.md')
-rw-r--r--content/works.md106
1 files changed, 66 insertions, 40 deletions
diff --git a/content/works.md b/content/works.md
index c00890a..73c91f3 100644
--- a/content/works.md
+++ b/content/works.md
@@ -2,23 +2,7 @@
 title: Works
 language: en
 translationKey: works
-slug: /about/works/
 disable_feed: true
-menu:
-  about:
-    name: About
-    url: /about/
-    weight: 1
-  social:
-    parent: about
-    name: Social media
-    url: /about/social/
-    weight: 2
-  works:
-    parent: about
-    name: Works
-    url: /about/works/
-    weight: 3
 ---
 
 I am a web backend developer, though I'm open to experiment in other fields as
@@ -26,7 +10,7 @@ well.  You can look at my project on:
 
 - [GitHub](https://github.com/Huy-Ngo/)
 - [Disroot Git](https://git.disroot.org/huyngo)
-- [source hut](sr.ht/~huyngo/)
+- [source hut](https://sr.ht/~huyngo/)
 
 See my CV in PDF format [here][cv].
 
@@ -34,17 +18,9 @@ See my CV in PDF format [here][cv].
 
 - Bachelor: University of Science and Technology of Hanoi, 2018-2021
 
-# Work Experience
+# Free Software work
 
-## Internship
-
-So far I have only worked as intern in VC Corp. During my internship there, I
-created a disposable mail system as a proof of concept. Afterwards, I have been
-working with their mail system for a short while.
-
-# Projects
-
-## School projects
+## Web apps
 
 ### Acanban
 
@@ -54,31 +30,69 @@ 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.
 
-## Personal projects
+## Chat bots
+
+### Discord meme bot
+
+[Meme bot][discord-meme-bot] is a meme bot for discord using Reddit API.
+
+## 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.
 
-- [discord-meme-bot], a meme bot for discord
-- [wikt-cli], a CLI tool to search Wiktionary using its API
-- [cov-news][cov], a crawler for COVID-19 related news 
-- [GenWord][genword] a word generator on Android, alternative to [its JS equivalent][gen]
+## 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 this distribution.
+
+### 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.
-- [Round Robin][rr-sched], a web-based personal time scheduler inspired by
-  process scheduler algorithm of the same name.
+- [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
 
-# Languages
+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.
 
-I'm most comfortable with Vietnamese for casual conversations and English for
-working (such as for documentation and commit messages). I also can speak some
-French and German with low fluency and read/write them with the help of a
-dictionary.
+## Internship
+
+During my internship at VCCorp, I have worked with several problems related to
+mail, namely:
+
+- disposable mail service
+- mail tracking[^1]
 
 [cv]: https://raw.githubusercontent.com/Huy-Ngo/my-cv/master/huy-cv.pdf
 [palace]: https://git.sr.ht/~cnx/palace
@@ -89,3 +103,15 @@ dictionary.
 [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.