muhuk's blog

Nature, to Be Commanded, Must Be Obeyed

April 03, 2018

Getting a Little Further Than Hello World With Rust - Part 2: Test Driven Development

This is the second post of Getting a Little Further Than Hello World With Rust series. We will write some Rust code with tests. In fact we will be practising Test Driven Design.

  1. We will start by writing a unit test and make sure it fails.
  2. We will write the code to make the test pass. Just enough code, nothing more.
  3. If there are any opportunities, We will refactor our code.

Rinse and repeat.

Read more...


November 28, 2017

Getting a Little Further Than Hello World With Rust - Part 1: Ownership & Mutability

Rust has excellent documentation and these posts are not meant to replace the official documentation. I strongly suggest going through the links below, if you have not already done so, before/after/while reading these posts:

Read more...


November 07, 2017

How to Install Rust on Debian Without Sudo

Rust has been around for a while but I have just recently found the opportunity to study it. It has some unique and powerful ideas and I intend to experiment further. This post summarizes the steps I have followed to install Rust toolchain on my Debian Stretch machine without admin rights[1].

Read more...


November 01, 2017

Presentation: Building a Simple DSL in Clojure

I did a short presentation for Singapore Clojure Meetup yesterday. You can find the slides here.


September 24, 2017

How to Write Easy to Read Code

A long time ago in a software sweatshop far, far away... Our code monkeys, haxx0rl33t and xXxDarkAssassiNxXx were furiously typing away to meet their deadline that was yesterday. The fact that it was dictated by non-technical people is irrelevant to our story. Our story is about the consequences of this artificial urgency for our code mon... developers.

Our esteemed colleague Mr. haxx0rl33t, is a results oriented fellow. To be more specific; the kind of person who would argue; assembly is as expressive as any so called high level language, because they are all turing complete. Code is purely a means to an end, triggering right side effects at runtime is all that matters. Therefore haxxy can’t care less about readability. Now, this may come as a surprise to you, but haxx0rl33t’s code occasionally has bugs.

Read more...