A life journey

about me


Loves programming, music and appreciates what God has given us.

I’m a software developer and you can visit my programming blog here. During the weekends, or when I’m not working or spending time with the missus, I enjoy playing music on my bass. Here are some of me and my band’s original composition over the years.

Sometimes, I enjoy going out for a walk and enjoy the life. Here are some of the photos that I’ve taken through out the past couple of years.


found on

contact at

benson at progriff dot com

Deep Fried Vege With Toyomansi Sauce

- -

Tempura vege and toyomansi sauce


  • Vege of your choice, preferably lady’s fingers, long beans, egg plant or sweet potato
  • 2 cups of corn starch
  • ¾ cup flour
  • 1 pc boiled egg, grated. No grater? Mince it
  • 5 cups cooking oil
  • 1 cup of water
  • 1 table spoon salt
  • Soy sauce
  • ½ lemon
  • 2 tablespoon sesame seed oil
  • 1 table spoon sugar

  1. Cut the veges into smaller pieces
  2. Mix the corn starch, flour, eggs and water.
  3. Mix until it thickens.
  4. Heat up the oil in a pan or wok.
  5. Dip the vege in the barter and deep fry.
  6. Put the vege on a plate lined with paper towel.

The Sauce

  1. Mix the soy sauce, sesame seed oil and sugar.
  2. Squeeze lemon juice in.
  3. And stir until the sugar desolves.

Steak With Red Wine Sauce

- -

Made this simple steak recipe for our Valentine’s dinner.

Steak and Red Wine Sauce


  • 1 bulb of garlic, minced
  • Mixed herbs
  • ½ bottle of red wine
  • 150g button mushroom, sliced
  • ½ red onion, diced
  • 2 pieces of steak
  • some spring onions (optional)
  • a bunch of asparagus
  • olive oil
  • black pepper
  • 1 tablespoon of butter


  1. Put the steaks in a huge bowl or plastic container if you like.
  2. Pour in olive oil, red wine, ½ bulb of garlic that we’ve minced, some mixed herbs and black pepper.
  3. Mix them together.
  4. Leave it in the fridge for ½ to 1 hour

Stir Fry Asparagus

  1. Cut the asparagus into smaller pieces.
  2. Heat up your wok.
  3. Pour some olive oil into the wok.
  4. Stir fry the garlic until it turns golden brown.
  5. Add in the asparagus and stir.

Red Wine Sauce

  1. Heat up a pot.
  2. Put in the butter.
  3. Fry the onions in the pot.
  4. Pour in the wine and stir for 10 minutes.
  5. Put in the mushrooms. If you want a more creamier tastem add more butter.
  6. Put in spring onion if you like.


  1. Take out the marinated steak from the fridge.
  2. Heat up non stick pan.
  3. Cook the steak for about 15 minutes if you prefer medium rare.

Putting It All Together

  1. Once you’re happy with your steak, put it on a plate.
  2. Pour the wine sauce on your steak
  3. Finally, put your stir fried asparagus next to your steak and enjoy

Amplitude Envelope on a Synthesizer

- -

Hello once again! I am Benson Lim from Melbourne and for the sixth and final week of “Introduction To Music Production”, I’ll give a thorough explanation of the amplitude envelope. I’ll cover the following amp envelope configurations: Switch, Percussive, Damped percussive, Sustaining (blown or bowed), and Quirk. The screenshot you’ll see below comes from Apple Mainstage 3 with the “ES 1” synthesizer. On the bottom right, you’ll see the ADSR configuration.

What is an envelope? Envelope is a set path everytime a key is pressed. Normally the sound goes up, and then down, stays for a while and fades out. On a synthesizer, an envelope is controlled by four paramters. They are “Attack Time”, “Decay Time”, “Sustain Level” and “Release Time” or ADSR for short.

ADSR *the graph above was taken from Loudon Stearns’ Introduction To Music Production, Week 6 – Amplifiers

Switch Envelope

You can achieve this by setting Attack to 0, Decay Time which does not matter but set it to very low, in this case 0, Sustain Level to 100% and Release Time to 0.


The switch envelope functions like a hammered organ does. Once you stop pressing the key, it’ll stop immediately. Here’s a sample sound of how it’ll sound like.

On some synthesizers, you might get a click sound. To remove the click sound, add abit of attack and release time. You can increase the attack time and you’ll get a swelling kind of sound. This emulates a reverse sound very well.

switch no click

Percussive Envelope

In the lecture, Loudon’s configuration looks exactly the same like the switch envelope. I made a few modification to my setting because the percussive envelope is good in emulating the string or brass instruments which means, I’ll need to increase my release. Why? because like the real instrument, they’re adding energy to the note as the note continues on.


And here’s a sample of a percussive sound.

Damped Envelope

To get the damped envelope, set everything else to 0 and set the “Delay Time” to 10-80%. The damped envelope simulates a piano. When you press a key, you’ll get an initial attack and then the note decays naturally.


And here is a sample of the damped sound. If you want a full sound irregardless of the length you press, set the “Release Time” the same as the “Delay Time”.

damped release

Sustaining (Blown or Bowed) Envelope

To get the blown or bowed envelope, set your “Attack Time” to 0-10%, “Decay Time” to 50%, “Sustain Level” to 50-90% and “Release Time” to 50%. I am aware that these settings are quite different from the one shown in the lecture, but setting the 0-10% to decay and release time doesn’t give me the sound that I wanted.

This envelope is useful to emulate the sound of a blown or bowed instrument like the violin. Like the violin, you’ll have a sudden attack, and then a sustain sound. blown And here’s a sample of the blown sound.

Quirk Envelope

This envelope is something that Loudon found by accident. It does not emulate any instrument but it has an interesting sound. If you press 1 note, you’ll get a beep. Press 2 notes, and you’ll get a long release. This happens because the release phase starts when you release the key.


And here’s a sample of the quirk sound.

Thanks again for spending time to read this simple demonstration and I hope that you enjoy reading it as much as I enjoy writing it.

Algorithmic vs Convolution Reverb

- -

Hello once again! I am Benson Lim from Melbourne and for the fifth week of “Introduction To Music Production”, I’ll compare and contrast an algorithmic and convolution reverb. I will also demonstrate the difference and the important features in both types of reverb.

What is a reverb? Reverb is when a signal or sound is reflected causing a large number of reflections to build up. For example, when you play an instrument in a cathedral and you’ll get the reflection of the sound. On the DAW, there are two kinds of reverb that you can choose. They are:

  • Algorithmic
  • Convolution


Most DAW comes with algorithmic reverb plugin. For example, on Logic, AUMatrixReverb is an algorithmic reverb. On Reaper, it’ll be ReaVerbate. Algorithmic reverbs generates the sound by simulating the impulse responses based on the input that you enter into your DAW. Since the algorithmic reverbs are generated based on parameters, it can sound quite fake especially when isolated in a solo instrument case. Though it sounds fake, it gets the job done. This is because algorithmic reverb is really easy to create but hard to master.

sample algorithmic A sample algorithmic reverb plugin in Reaper.

Click here to listen to a sample using algorithmic reverb.


  • easy to use
  • do not need a sample


  • can sound fake
  • hard to master
  • not suitable for solo intruments (sounds fake when isolated in a solo instrument)


Convolution reverbs use real sound samples. For example, we can record the sound sample from an auditorium or a chapel. On Reaper, you can enable convolution reverb by using the Reaverb plugin. In order to get a sample to use with the convolution reverb, you’ll need to use multiple microphones to capture the acoustics of the room. Then, you’ll upload the file to your DAW and your convolution reverb will then filters your sound through this impulse response to generate a “believable organic tail” based on the characteristics of a real room.

Since the effect process for these types of reverbs involves running filters over your signal and mixing that with another signal, they often consumes more resources from the CPU.

sample convolution A sample convolution reverb plugin in Reaper.

Click here to listen to a sample using convolution reverb. And here is the sample sound that I’ve used to create the reverb.


  • will produce a much better reverb than algorithmic


  • consumes more CPU resources
  • needs to record or have actual sample sounds to produce the reverb


If you’re recording professionally, I would recommend the convolution reverb as it’ll sound more organic and real. But again, depending on the type of genre you’re mixing for. For a typical metal or grunge music, you can get away with algorithmic reverb.

Thanks again for spending time to read this simple demonstration and I hope that you enjoy reading it as much as I enjoy writing it.

Effective Use of a Compressor With Garage Band

- -

Hello once again! I am Benson Lim from Melbourne and for the forth week of “Introduction To Music Production”, I’ll demonstrate an effective use of a compressor in a musical context.

Why do we need a compressor? Applying compression to a track lowers the volume of the loud sounds and raises the low volumes. How much compression you need depends on the type of music you’re mixing. For example, you might not want use too much compression on a classical music, on the other hand you might want to add more compression on a metal music. Most importantly, do not over compress your sound or it’ll sound “squashed” or lifeless.

So let’s dive into the demonstration. Say you’ve recorded a guitar track. You’ll need to open up the smart controls by going to View –> Show Smart Controls.

smart controls

On the bottom part of the Garage Band, press the “i” button.

smart controls

Then scroll all the way down to the plugin section. Garage Band allows you to have up to 6 plugins. Some presets may have a compressor. If yes, just click on the compressor button. compressor in plugin

If not, click on an empty slot, and go to Dynamics –> Compressor compressor menu

You should then see the compressor control screen. compressor control

You can either choose a preset provided by Garage Band or you can manually control the compression. First, is the Compressor Threshold. This controls the point at which the compression will kick in. On the screen above, anything above -20dB will be compressed.

The ratio determines how much volume to reduce. The higher the ratio that you specify, the more volume will be reduced. If you lower down the ratio, the compressor will reduce the volume less. For example, in the screen above, it is set to 1.5:1. What this means is for every 1db that your audio goes over your threshold setting, it’s volume will be reduced by 1.5db.

Then, there is the attack. The attack controls the speed of when the compression kicks in. Kick drums, snare drums and certain vocals (rap and hip hop) have very fast attack setting, whereas genres like jazz will have a slower attack speed.

Finally, the gain boost the output level to make up for the lost volume.

So here’s a sample of a recording without any compression.

Now, I’ve added a compression with -12dB Threshold, 3.7:1 ratio, 3 ms attack and 7 dB gain. Click here to listen.

Thanks again for spending time to read this simple demonstration and I hope that you enjoy reading it as much as I enjoy writing it.

Channel Strip on Analog Mixer

- -

Hello again! I am Benson Lim from Melbourne and for the third week of “Introduction To Music Production”, I’ll explain the channel strip on an analog mixer. I’ll be using the Yamaha MW12 mixer. Like most modern mixers, we can output the sound from the mixer to our computer to be further mixed via the DAW.

So basically on a channel strip, the sound moves from the top to the bottom, and then to the left where it’ll be mixed with the other channel strips and will be combined with the master bus. So for the first part, we’ll have the input section. Here, you can plug in XLR cable (mic), a TS cable (instruments like guitar) or the insert cable. Note that the “Line” input did not specify balanced or unbalanced, so it’ll only accept the TS cable.

The insert I/O is very useful. It allows us to add external devices (a compressor or an EQ) into the signal flow. We’ll need to use an insert cable as shown in the diagram below.

inert cable (taken from this pdf)


After the input section, we have the input trim control. Trim is also known as gain. We can control our input level with this control. This section serves as a microphone pre amp.

Then we have the EQ section. The EQ basically allows you to change the highs, mids or lows of your track. If your mixer does not have the EQ section, you’ll need to use the inserts to change the EQ.

Next, we have the AUX send. The AUX basically allows you to route your sound to more than one place. For example, the guitarist only needs to hear the bass guitar, drums and abit of vocals. You can control that via AUX without disrupting your master bus mix. Do note that the order of the EQ and the AUX send section can vary between manufacturers.

After the AUX send, we have the Pan section. Pan allows you to change the level between 2 channels. On a strip, the input is mono, but the output will always be stereo. So if you pan to the left, you’ll only hear the track from your left speaker. If you pan to the right, then you’ll only hear the track from your right speaker. All panning does is reducing the level and not moving the info from the left to the right or vice versa.

Then we have the mute button. On the Yamaha MW12, once you press the “ON” button, it’ll light up and you can listen to the track from that channel.

Finally, we have the volume fader which allows you to adjust the level of that channel. On this mixer, there are some additional functionality added to the volume fader section. The “PFL” button or the “Pre-fade listen” feeds the channel’s pre-fader signal to the headphones and Control Room outputs, while a button labelled ‘1-2’ routes the channel output to the mixer’s group bus, regardless of whether the mute button is on or not.

channel strip

All the channel strips will then be combined from the left to the right at the master bus.

master bus

Thanks again for spending time to read this simple explanation and I hope that you enjoy reading it as much as I enjoy writing it.

Record MIDI and Quantize in Garage Band

- -

Hello again! I am Benson Lim from Melbourne and for the second week of “Introduction To Music Production”, I’ll be demonstrating on adding a software instrument, record a MIDI and quantize using Garage Band on a Mac. In this example, we’ll be using a USB Midi Keyboard.

First, plug in your MIDI keyboard to your Mac. Most MIDI keyboards will light up when plugged into a USB port. Midi Keyboard

Then, fire up Garage Band and create a new project by going to File –> New and select “Empty Project”

New Project

Next, we’ll have to make sure that Garage Band recognize your MIDI keyboard as it’s input. By doing so, go to GarageBand –> Preferences –> Audio/MIDI and select your Input Device. If your device isn’t working properly, be sure to install the device driver provided by your MIDI keyboard manufacturer.


By default, Garage Band will automatically create a “Classic Eletric Piano” software instrument track for you. You can change the instrument or if you need more sounds, you can purchase the Garage Band Sound Library from the App Store.


Before we start recording we’ll need to set the count in and your beats per minute. To enable count in go to Record –> Count-in. You can select either 1 bar or 2 bars for your count in.

count in

Then, change your bpm by double clicking on the bpm value and key in your desired bpm.


Now we can finally start out recording. Click on the big red button to start recording your song. Remember, for optimal results, it is best to practice your songs before hand.


Once you finish recording your track you should see something like the screenshot below. Double click on the area highlighted in red and the editor will appear.


If you prefer to edit the note in a music score form, you can click on the “Score” tab.


After recording, I realized that I’ve played a wrong note. To remove the wrong note, select the note and press the “Delete” key.


Next, I felt that the end of the song should sustain longer than what it should be. Scroll to the end and select the region that you want to drag longer.


At the end of the region, you’ll notice a cursor change. Click and drag to your right. In the event where you’re not playing on time, you can select the notes and drag them to grid. You can also move the notes higher or lower by dragging them up or down.


For certain instruments like Cello, we’ll want to quantize the strength before each grid to sound more natural. You can do so by click on the empty region, and select your time to quantize, which in this example is 1/16 note. As mentioned in the second lecture, we should start with strength value 20 and increase them accordingly.

quantize strength

You can also change the velocity of each note by selecting the notes that you want to change the velocity. You’ll then get the option to change the velocity on your left.


If you need to add more software instrument, go to Track –> New Track and select “Software Instrument”.

Software instrument

Thanks again for spending time to read this simple tutorial and I hope that you enjoy reading it as much as I enjoy writing it.

Recording an Electric Guitar or Bass Without an Amplifier

- -

Hi! I am Benson Lim from Melbourne, Australia. For the first week of “Introduction To Music Production”, I’ll be showing you an easy way to record an electric guitar or a bass without an amplifier using a very simple use DAW software called Garage Band on a Mac. OS X has a very low audio latency and pretty much works out of the box. Since Mac OS X runs on UNIX, it is quite stable as well. Garage Band, though simple is quite a good DAW for beginners like myself.

For this tutorial, you can either use an audio mixer or a cheap ¼ inch TS to USB interface like the Pod Studio GX. In this tutorial, I’ll be using a my Yamaha Mixer because I lent my Pod Studio GX to my friend. Before you start, be sure to install the necessary drivers on your Mac.

First, connect your mixer or your ¼ inch TS to USB interface to the USB port. Typically, a mixer would require an external power to work, however devices like the Pod Studio GX does not require any external power to work.

connect usb to mac

To verify that your equipment works, click on the Apple Logo –> System Preferences –> Sound –> Input Tab. You should be able to see your device listed in the device selector.

System preferences

Now that you know that your USB interface is working, plug your ¼ inch TS cable into your guitar and connect the other end into the mixer (which says Line In).

ts cable

On your mixer, make sure you turn on the button for Channel 1. Like what was thought in the first lecture, make sure that your volume doesn’t go all the way up, causing the equalizer to go to the “red” area. Strum your guitar, and make sure that your equalizer receives signal from your guitar.

turn it on

So to summarize, your connection should look something like this:


Next, open up Garage Band and select “Empty Project”

empty project

Then, select the option “Record guitar or bass using GarageBand as an amp”. Remember, eventhough you can listen to yourself via your computer, there will always be a slight delay. Using your guitar amplifier as a monitor is always recommended.

instrument selection

Before we start recording, make sure that your output device and input device points to the correct devices. On the menu, go to GarageBand –> Preferences –> Audio/MIDI tab.

garageband system pref

Finally, we can start recording. On the left hand panel, you can select your guitar effects. I would recommend using clean sound when recording and then changing your effects during post production. We want to make sure that the DAW is using as less CPU power as possible. Strum your guitar and you should be able to see GarageBand picking up the sound from your guitar. In the event where you change your mind and decide to use your guitar amp as a monitor, just click on the orange button (Input Monitoring) to disable monitoring from your computer.

brit and clean

Click on the record button and start recording.


Once you’re done, you might want to share your recording with your friend or ask an expert to do some post production. Go to Share –> Export Song to Disk. If you’re going to share the song with a friend for demo purpose, I would recommend exporting to MP3 since the file will be smaller and have better compression. If you need to save the song in a higher quality for post production, use AIFF (24 bit). I do not recommend AAC because not all devices in the market supports the AAC format.

Thank you for reading this simple tutorial. I hope that you enjoy reading it as much as I enjoy writing it.

Finally Moved to iOS

- -

As a long time Android user (since HTC Hero back in 2009 mind you), the release of iOS 7 finally caught my eye. Sure, I wouldn’t be able to root my phone and install custom roms and kernels on my phone, but I’ve always loved Apple’s polished user interface and ease of use. So yes, it’s been a while since I’ve itching to own an iDevice. Finally, there was a 1 hour flash sale from Wireless 1 which was selling the iPad Mini Retina for AUD$383.

Here are some apps that I’ve been using so far after a month using my iPad.

Alien Blue Reddit Client

Alien Blue is a Reddit client. Incase you do not know what Reddit is, Reddit is a social networking and news site where registered users can submit contents. Unlike Bacon Reader, I’ve felt that Alien Blue feels more light weight. Alien Blue only cost me USD$4.99 which is the same price as a cup of coffee.

alien blue reddit client

Newsify RSS Reader

Like me, if you’ve moved to Feedly from Google Reader, you might want to check out Newsify. Newsify allows you to sync with Feedly and download your unread items into your iPad. Newsify is free but it’ll come with advertisements. I’ve used it so much that I end up buying it.

Newsify RSS Reader

CloudMagic Email Client

CloudMagic was free a few weeks ago, so I’ve decided to download and test this email client. CloudMagic is an email client that allows you to sync your email from multiple email accounts. I’ve only tested with GMail and my work’s exchange email. Seems to be working well for me.

Cloudmagic Email Client


Evernote is a cloud based notepad that allows you to sync your notes from your tablet, computers or your phones. I find it extermely useful for me to write down my tax claims, songs, poems, thoughts and lectures.



Spotify allows you to stream music from the internet. If you’re willing to pay for the premium membership, you can download the songs into your device so that you can listen to the songs when you do not have any internet connectivity around.



I’ve been using this version of the Bible since the day I owned the HTC Hero. This app allows you to bookmark, highlight and switch between the versions of Bible.



As a synthesizer player, I enjoy the simplicity and ease of Garage Band. This app allows me to record or even be a synthesizer as well. The app is free, but I would recommend buying the extra sound contents which is part of it’s in app purchase.

Novation Launchpad

I’m not a DJ but Novation’s Launchpad is quite fun to play with. The basic EDM has alot of catchy beats and tunes. So if you need to impress some one, try Launchpad :)

Novation Launchkey

Another fun app from Novation, the Launchkey is another Synthesizer app that I use.

Sovereign Hill

- -

To experience the old Victorian mining days, one should visit Sovereign Hill in Ballarat. On the day when we visit Sovereign Hill, it was a scorching 45 Degrees Celcius. Good times!

town Feels like I’ve went back to time and warped to a cowboy town.

looking for gold Visitors trying to look for gold flakes.

billboards Old style advertising.

gun man And a guy showing us how to fire an old school rifle.