Clandestine Maths Club: Interview with Kenny Hung
16 February 2012, by Zoe Cunningham
Following on from my previous posts about the “clandestine maths club” that has sprung up at Softwire, I interviewed one of the ringleaders – Kenny Hung.
Zoe: Who are you?
Kenny: I’m Kenny; I had a passion for Maths at University, and since my time doing my first degree at Oxford, I have done a Masters in Maths with the Open University.
Zoe: Can you give me a potted version of your history and how you joined Softwire?
Kenny: For the two years before I joined Softwire, I was a full-time musician. While the lifestyle was fun, two years is a long time to have no social life outside the music scene and so I looked to embark on a new career.
I’d been fiddling with computers for most of my life, beginning with my experiences with ZX Spectrum BASIC when I was younger, graduating to Z80 Assembly language on the same machine, then dabbled with a bit of Visual Basic and PHP. Mostly, I considered myself a hobbyist in programming, and at that stage, I decided it would be nice to get paid for my hobby.
Zoe: What projects have you worked on at Softwire?
Kenny: My first project was the Nescafé website, making a system that managed the website’s content, and allowed users to redeem their ‘beans’. And beans mean prizes.
Since that project completed, I have spent my time on the Reservwire team, looking after the biggest Reservwire customer and overseeing their support and development over the past two years or so.
Zoe: So how did writing maths on whiteboards come about?
Kenny: It wasn’t me who started it!
I noticed that various puzzles of a Mathematical nature were being posed on the various whiteboards around the place, mainly of the combinatorics/graph theory type. I think the first one was an extension of one of our interview questions. It was quite a challenging problem, and one which all developers at Softwire would be familiar with (because we had all sat through the interview process).
These questions got more and more Mathematically involved, including some epsilon-delta calculus-type questions (which I hadn’t seen in a long time!). I started adding to them, and a small group of us (maybe a dozen of us) began using these problems as a way to have a five minute break from what we were doing and have a think about a problem which wasn’t directly relevant to our work. There was at one stage a sort of ‘mystic circle’ of Mathematicians that would anonymously pose problems.
Zoe: How does it work?
Kenny: A problem gets posed, a small group of us who come down to the chill out room have a think about the problem posed, and try and answer it. The group of people who tend to do this have their own weaknesses and strengths, but we’re all pretty much ‘hobbyist’ Mathematicians who like to exercise that part of the brain every now and then.
Zoe: Why is it a good way to have a break from programming?
Kenny: Anything is a good break from our day-to-day jobs. Even though I still find enough to get excited about in my job (and I can’t really see that stopping any time soon), it’s good to have a five minutes break from it. It doesn’t particularly matter what you spend those five minutes doing: have a coffee, game of pool, solving a Mathematical problem. What’s important is to have regular breaks so that your mind stays fresh, your efficiency stays optimized, and your working life stays healthy. Everyone’s a winner!
Zoe: Why does being good at maths make you a good programmer?
Kenny: There is a lot of overlap between programming and Maths. Maths graduates will have spent three to four years constructing water-tight proofs of various statements, many of which find their origins in quite mundane everyday ideas. The process of formalizing these ideas is similar to designing a piece of code, and the process of actually writing down a formal proof is akin to writing the code itself.
This is just the tip of the iceberg: more elementary Mathematics (such as Logic and Algebra) are probably akin to low level coding (in C or Assembly, for instance); applied Maths is much like using a framework (where you have to learn the rules of the framework before embarking on trying to figure out how to do stuff inside it); I could probably come up with hundreds more parallels.
Of course, there are differences: you can probably be a very productive Mathematician without learning to type, for instance. However, the overlap is certainly very large.
Zoe: What’s your favourite maths problem?
Kenny: I’ve always liked Gödel’s Incompleteness Theorem. There’s something nice about knowing that a system so rigorously defined can have holes in it.
Zoe: What’s your favourite programming problem? Is it related to maths?
Kenny: It’s a bit of a cop-out (because it’s nearly the same problem as Gödel), but I love the Turing Machine stuff about computability. It’s nice because of the same things as Gödel, but also because it demonstrates that Computing is fundamentally Maths in disguise.