[Day 25] Things that I have to stop saying

Spoiler: This post might make you hate me.

It’s the end of another academic year so I thought I should reflect on the kind of person I have become through the year. Going through my notes, emails and online conversations, I realized several alarming patterns. I have become a person of excuses. I need to stop using them.

Continue reading “[Day 25] Things that I have to stop saying”

[Day 25] Things that I have to stop saying

[Day 0] Hello, world!

Hi there,

I’m Chip. I’m a student looking for healthy distraction from homework. I want to learn something new every day and, hopefully, blog about it. It can be anything, ranging from maths, psychology, philosophy, technologies to random conversations I have with interesting strangers.

If there is something you want me to learn and write about, you can put a comment here or reach me at: Screen Shot 2016-05-19 at 11.28.49 AM

Wish me luck!

 

[Day 0] Hello, world!

Since when programmers prefer Macs over Windows

When I got my first Mac 5 years ago, my programmer friends almost disowned me for being such a disgrace to the local nerd community. At that time, there was a prevailing sentiment that real coders used Windows or Linux. Macs were for the fuzzy, the uninitiated, the sparkling nincompoop in the realm of marketing.

Continue reading “Since when programmers prefer Macs over Windows”

Since when programmers prefer Macs over Windows

Why computer coordinates start from the upper left corner

When I first studied graphics programming, I was traumatized that the coordinate system on a computer’s screen is upside down. The positive x-axis starts on the far left and points to the right as normal coordinates should do, but the y-axis has its 0 at the top of the screen and nosedives straight down to hell from there. Imagine that you have all your graphics worked out beautifully on paper, and then when you try to program it in a computer, you have to flip all the figures and re-calculate all the coordinates. Why can’t computer scientists be normal for once and respect the centuries-old Math? Cartesian coordinates were invented in the 17th century, while the first electronic general-purpose computer (ENIAC) didn’t come out until 1946.

Continue reading “Why computer coordinates start from the upper left corner”

Why computer coordinates start from the upper left corner

Evil Hangman

I learned about Evil Hangman a while ago when I was reading my professor’s blog (Don’t judge me. I’m sure you googled your professors too. The Onion wrote about it.). I never got around to write this game until today when I woke up and decided that I should do something with my life.

Evil Hangman is like normal Hangman — players try to guess a secret word by entering different letters. But in Evil Hangman, players are (almost) guaranteed to lose. I said “almost” because Evil Hangman is a program with a deterministic algorithm. If a player knows how it works, they can guess the letters in a way to maximize their chance of winning.

Continue reading “Evil Hangman”

Evil Hangman

Translating MATLAB to C code

As a low level research assistant in a lab, I have recently been assigned the task of translating a chunk of MATLAB code to C. When I contacted my brother for guidance, he looked at me blankly: “Why? Who does that?” I never thought code translation was a thing. Why don’t people just write their programs in their desired language from the beginning? Why must they come up with new ways to torture these poor research assistants? Warning: this post contains some nerdy information that you shouldn’t be concerning yourself with unless you unfortunately have to.

Continue reading “Translating MATLAB to C code”

Translating MATLAB to C code