I am Michael Tsang. I am a web developer making websites which are lightweight, responsive, easy to maintain, using standard technologies as much as possible. I use long-lasting technologies such as PHP, traditional development methodologies, and best software development practices making websites lasting for years with minimal deprecation risk, reducing code rot and the maintenance effort of keeping websites running.
I graduated from The University of Hong Kong with first class honours in 2016. I won numerous prizes in different programming contests in university, using my skills of writing easy-to-maintain code. I also maintain a few websites, including my blog which is more than a decade old, as well.
Being a technical person does not mean coding or dealing with machines all the times. Apart from computer programming, I am also a sportsman good in orienteering, where I participated in the World Trail Orienteering Championship in 2017 and 2018 as a Hong Kong team member. In addition, I also love the ocean and sail, swim and dive in it. I now have 5 marathon swims under my belt.
My competitive experience
As a Hong Kong representative
- International Olympiad in Informatics (2009, 2011, 2012)
- Bronze medal in 2011 and 2012
- National Olympiad in Informatics (2011): silver medal
- World Trail Orienteering Championships (2017, 2018, 2022)
Other notable competitions
- 2nd Egypt International Trail Orienteering Championship (TempO) (2018): 2nd place
- Hong Kong Trail Orienteering Championships (PreO) 2016: 1st runner-up
- Hong Kong Trail Orienteering Championships (TempO) 2016: Champion
- ACM-HK Programming Contest 2015 (team BIG BOSS): Champion
- ACM/ICPC 2014 Guangzhou Asia (team IT Genius): Bronze medal
- ACM/ICPC 2012 Hanoi Asia (team IT Genius): First Prize (third place)
- Hong Kong Olympiad in Informatics 2008 – 2012: gold prize (best young contestant in 2008 and 2009)
Things I do
- PHP (It's now safer and safer since PHP 7)
- UNIX shell script (I wrote my own backup script on my server, already working for years)
- C++ (I like auto and lambdas very much!)
- Java (not my favourite)
- HTML5 (I make this all by myself)
- Haskell (Programming using math formulæ!)
- orienteering (find me in a local race!)
- open water swimming (including marathon swimming)
- diving (currently without SCUBA gear only)
- sailing (including windsurfing)
- bridge (card game)
I set up my Debian server all by myself, making it the core infrastructure of all my digital assets, allowing me to access it everywhere from the internet, anytime. It includes:
- IPv6 (Are you viewing this thru IPv6? See the bottom of this page! )
- CalDAV / CardDAV (I am using my server to host my calendar.)
- and much more...