Thursday, December 7, 2017

Automate Flow: Auto enable WiFi when you arrive home and disable WiFi when you leave home

This is an example of Automate flow. To learn more about Automate for Android phones, click here.

It is always a good idea to disable the WiFi function of your Android phone until you want to connect to a WiFi network. This will help to conserve battery usage, and also prevent your phone from automatically get connected to certain open WiFi without your aware, which might be used to hack in your phone.

Normally, there are fix places with WiFi that you will definitely want to use, to conserve your mobile Internet data quota usage. Those places include your home and/or your work place.

This Automate flow will help you to automatically disable WiFi function of your phone after your leave your home, and automatically enable it back when you arrive your home. It will even inform you by voice so that you are aware when WiFi is automatically enabled and disabled by this flow.


Enabling WiFi function does not guarantee a successful connection, because sometimes your access point (AP) or wireless router might have problem in establishing the WiFi connection.

Therefore, after enabling WiFi, this flow will wait for 10 seconds, which should be long enough for normal WiFi connection to be established. It will then check if the connection is successful or not.

If the connection is successful, it will log down the name a.k.a. SSID (service set identifier) of the AP or wireless router your phone has connected to.

If the connection is not successful, it provides option for you to remain enable WiFi or to disable it. Regardless of your selection, you will still need to troubleshoot and find out why the WiFi connection cannot be established. It could be caused by your AP or wireless router is switched off, or hang, or WiFi function disabled, or DHCP IP address allocation full, or other possible issue. If your phone has never made a successful connection with the WiFi at the location before, or you have made your phone "forget" about it, the connection will also be not successful as well.

Before you can use this flow, you need to tell it where is your home. This can be done by tapping on Block 12 "When at location". The following screen will come out.

Tap on the "Pick a location on map..." button to bring out Google map. You can then search for your home by either tapping on the "target" icon if you are currently at home, or by tapping on the search (magnifying glass) icon and key in your home address for search, or by manually selecting the location by navigating the map and tap on the targetted place.


When you are done, tap on the OK button below to capture the location's coordinate.

The Radius setting determines the area that you consider your phone is at home. Normally, 50 meter radius as shown above is a good choice. You can set its value larger so that your WiFi is automatically enabled faster when your approaching home, and automatically disabled after you have travelled further away from your home.

You can use this same flow for other places with fixed WiFi, such as your work place. Just go through the same steps able to set the location before running it. You might also want to change the word from "home" to "office" in Blocks 14, 15, 16 and 17 of the flow.

With slight modification, you can even expand this flow to be used for multiple locations.

Wednesday, December 6, 2017

Automate Flow: Always go back to Home screen whenever phone is unlocked at launcher screen

This is an example of Automate flow. To learn more about Automate for Android phones, click here.

This is a very simple Automate flow with only 4 blocks (including the Flow beginning block).

Most if not all Android launchers support multiple screens for you to organize your apps and widgets into different screen as needed. One of the screens is your Home screen, which normally is where you put your mostly accessed apps and widgets.

When you are at the launcher screen without any opened foreground app, you can always go back to the Home screen by pressing your phone's Home soft key or Home button.

If most of the time, when you unlock your phone and start using it, you want to be at the Home screen regardless of which launcher screen you were at when your phone went to sleep and locked itself, this is exactly what this Automate flow will do.



This flow will wait until you unlock the phone, and check if you are at the launcher screen (meaning, no app is opened at the foreground). If yes, it will emulate pressing the Home button so that you will go to the Home screen automatically.

If you were running an app at the foreground (such as Whatsapp, browser, email, Facebook, etc.) when the screen was last locked, the flow will do nothing and you will return to the app screen after unlock.

In order for this flow to work properly, you need to set the correct launcher app of your phone in the "Is foreground app" block, because different Android phone vendor might provide their own launcher app to the phone. In addition, Android system also allows you to install and use 3rd party launcher app such as Nova launcher, Apex launcher, TSF launcher, etc.


You can tap on the "Pick activity..." button as shown above to select the launcher app you use in your phone.

The setting in the above screen is for Samsung TouchWiz launcher. For HTC phones, set the Package to "com.htc.launcher" and leave the Activity Class as empty field.

What if you never set any screen lock to your phone? In that case, you just need to change the "When device unlocked" block to "When screen is on" block.

Monday, December 4, 2017

Automate Flow: Switch your phone between Vibrate and Normal profile with customized mute

This is an example of Automate flow. To learn more about Automate for Android phones, click here.

Your Android phone is likely to have 3 general sound profiles:

  • Normal - ringer (for incoming calls) and notification will play a sound.
  • Vibrate - ringer and notification will mute. The phone will vibrate when there is incoming call.
  • Silent - ringer and notification will mute. There will be no vibration as well.
In fact, your Android phone has the following 6 types of sound, which you can set their volume individually (note: certain phone has paired the ringer and notification sound volume, so that the notification volume will always follow the ringer volume):
  • Ringer - for ringing tone sound
  • Notification - for notification sound
  • Media - for music and sound in apps, including Whatsapp, Facebook, Youtube, etc.
  • Alarm - for alarm sound
  • In-call - for phone conversation
  • System - for shutter sound of camera, screen lock/unlock sound, keyboard sound, etc.
When you switch your phone's sound mode from one to another among Normal, Vibrate and Silent, the volume of these 3 sounds will be changed accordingly: Ringer, Notification and System.

Note that the sound volume of Media, Alarm and In-call remains unchanged. This means when your phone is set to Vibrate or Silent mode, your instant messenger apps will remain unmuted and will still giving out sound, because Media sound remains unchanged.

You might want to also mute the Media sound when you set your phone to Vibrate or Silent mode, and un-mute the Media sound when you set it back to Normal mode.

Of course, there are apps that enable you to set additional customized sound profiles, but I am going to share with you how you can do it yourself by using a simple Automate flow.

The flow below will help you toggle between Vibrate and Normal sound mode. Since the Notification and System sound will follow when the Ringer sound changed, you just need to toggle the Ringer mode.

The beauty of this flow is on its next step. When you toggle the Ringer mode to Vibrate, it will also mute the Music audio. When you toggle it to Normal, it will unmute the Music audio accordingly.

To use this flow, run it once to enter Vibrate mode, and run it again to go back to Normal mode. The flow will display a message about the mode you have changed to, and end.

With this example, I'm sure you can easily modify it to toggle between Silent and Normal mode and save it as another flow.

You can also make it a single flow to toggle among Silent, Vibrate and Normal mode. That will require another block to check "Is ringer mode Vibrate?" when "Is ringer mode Normal?" returned a No. If this returns Yes, you might want to set ringer mode Silent, mute audio Music, and display "Silent mode" in the toast.

Making your Android phone smarter by programming task automation using Automate

Automate is a freemium Android app developed by LlamaLab that enables you to perform task automation in your smartphone.

With it, you can really make your phone much more smarter by running programs constructed using simple flowchart called Flows. All programming in Automate is done graphically by drawing flowcharts (without writing a single line of code) by joining building blocks, whereby each block will perform a single task.

A sample Automate flow looks like this:


Some of the examples that you can program your phone with Automate to do smartly:
  • Every morning when you wake up, greet you with a female voice with weather information and major stock markets closing index point. Pick up your calendar event and read out your appointments in the day.
  • When you are driving your car, auto enable Bluetooth and auto connect your phone to your car's Bluetooth hands-free function, and auto answer any incoming calls. When you leave your car, auto disable Bluetooth and resume manual phone answering.
  • When you are approaching home, auto send a Whatsapp message to your spouse that you are on the way and will arrive soon.
  • When you arrive home, auto turn on WiFi function and connect to your home WiFi. When you leave home, auto turn off the WiFi function to save battery.
  • Whenever you open Spotify app at home, auto enable Bluetooth and connect to your wireless speaker. When you open Spotify at other places, it won't do this and will play the music using your phone's speaker instead.
  • Whenever you enter into your favourite cinema hall, auto mute your phone and set it to vibrate mode. Unmute it when you leave the place.

Automate comes with several hundreds of ready made building blocks. There are basically just 2 types of block:
  • Action block which has a single output (example: Enable WiFi)
  • Decision block which has 2 outputs, 1 for Yes and 1 for No (example: Is WiFi enabled?)
For decision block, you can set the evaluation to be tested immediately (example: Is WiFi enabled?) or wait for the condition to change (example: When WiFi is enabled or disabled).

The ready made building blocks are grouped in the following categories:
  • Apps
  • Battery & Power
  • Camera & Sound
  • Concurrency
  • Content
  • Date & Time
  • File & Storage
  • Flow
  • General
  • Interface
  • Location
  • Messaging
  • Sensor
  • Settings
  • Telephony
Here is an example of available blocks inside one of the categories above (Camera & Sound).


To use Automate, you can either:
  • Just run the sample flows that suit you
  • Create your own flows and run them
  • Download flows shared by other users in the community
  • Download flows from the community, and modify them to suit your need
Automate comes pre-installed with several useful sample flows.


There is also a user community for its users to upload and share their flows with other users. You can upload your flows in the community too.

Community flows are categorized into the following groups:
  • Business
  • Communication
  • Education
  • Entertainment
  • Finance
  • Games
  • Health & Fitness
  • Home
  • Media & Audio
  • News & Magazines
  • Personalization
  • Photography
  • Productivity
  • Security
  • Shopping
  • Social
  • Sports
  • Tools
  • Transportation
  • Travel & Local
  • Tutorials & Examples
  • Weather
Below are some of the top rated community flows available for download:


A running instant in a flow is called a fibre. Each flow when executed will have one or more fibres.

The free version of Automate app is fully functional and ads-free, only with restriction of allowing up to 30 running blocks in all the running fibres. This is sufficient for most simple tasks. If you need to run more complex flows, or need to run a lot of flows concurrently, you can pay a small fee to upgrade to the Pro version.

If you configure Automate to run on system startup, all its running flows will resume from their previous running state even after a restart.

With Automate, you can make a lot of wonders in your phone, without writing a single line of code. All you need is constructing your logics with blocks and charting them into flows.

Thursday, November 30, 2017

Automatic incoming and outgoing calls recorder for Android phones

Have you ever encountered any situation that you wish to record down your phone conversation for future reference?

It could be a negotiation talk, or a sales order through phone, or any conversation containing message which you need to record down that typically you'll quickly search for paper and pen and asked the other party to repeat it. It could also be a scam call that you want to keep evident, or any other phone calls that you just want to save.

I use Automatic Call Recorder developed by Appliqato Software for this purpose. It is free for use (with ads), and you can also purchase the ads-free Pro version which will also unlock some of the unique functions not available in the free version.

Take note that there are quite a number of "call recorder" apps that can be found in Google Play Store. The one that I mention here is developed by Appliqato Software which has already achieved a few hundred million installation.


The beauty of this app is that once installed with automatic recording turned on by default, it will automatically record all your incoming and outgoing calls on its own without the need of prompting you. You can also temporary turn off this automatic recording function in its Settings.


Recorded calls will appear in its Inbox which you can replay and perform further action, such as save it permanently (will move from Inbox to Saved folder), jot down a title and notes about what is the call about (for your search reference), delete it, share the recorded audio to another app (such as sending to Whatsapp, Telegram, email, cloud drive, another phone through Bluetooth, etc.).


This call recorder can save the recording in either one of AMR, AAC, MP4 or WAV format. The default AMR format is suitable for voice recording, which produce relatively small file size. In case the recording sound volume is too soft, you can make configuration to increase the loudness.

You can configure the app to automatically save a copy of the audio record to your Google Drive or Dropbox, and you can specify for this synchronization to happen only when the phone is connected to WiFi.

Under Storage setting, you can specify how many number of recordings to retain in the Inbox, and the storage location path of your Inbox.


Under Filters setting, you can specify whose phone calls to record, and whose phone calls to skip recording. By default, all calls will be recorded.

In case you find the app failed to record some of the calls, it might be due to battery optimization function of your phone, which you can set to ignore battery optimization for this app.

Tuesday, November 28, 2017

My Snapware Eco Grip 600ml glass drinking water bottle

To keep myself well hydrated at work, I have bought a Snapware Eco Grip 600ml glass drinking water bottle at AEON department store. This drinking bottle with premium quality comes with a price slightly higher than normal plastic or aluminium drinking bottle. Luckily AEON was giving a 30% discount when I made the purchase.

Anyhow, its price is still comparatively cheaper than glass drinking bottle for some other brands.


This drinking bottle is FDA compliant, totally free of Bisphenol-A (BPA), and dishwasher safe too. It can be used to contain either hot, cold or warm water and beverage.

I prefer glass bottle than plastic or metal as glass is non-toxic and has non-porous surface that won't accumulate bacteria or residual. Besides, the glass is transparent in nature, easier for us to detect any contamination or change to the liquid inside the bottle. Glass material also won't have chemical reaction to the liquid it contains, which could be neutral, alkaline or acidic in nature. It also won't melt or release harmful chemical under direct sunlight.

The type of glass used for this Snapware product is borosilicate, which has higher resistant to thermal shock and less dense (weight lighter) than normal glass. Borosilicate glass is commonly used in laboratory glassware, medical devices and cookware. Its working environment can go as low as -20 degree Celsius to as high as 400 degree Celsius. However, being a glass material, it is not recommended for it to undergo a sudden huge temperature change within short period of time (don't take it out from a freezer and directly heat it up in a microwave oven).

Being a glass bottle, it is easy to break if not handled with care. The Snapware Eco Grip comes with a Neoprene sleeve with nylon strap. This non-slip sleeve covers most part of the glass bottle, protecting it from accidental breakage to a certain extend. It also provides a comfortable and easy grip, couple with the ergonomic bottle design.

Neoprene is the same material used in diving suit and certain swimming suit. It is waterproof and heat resistant in nature. This means you can hold the bottle without much problem even if the water inside is cold to freezing point or hot to boiling point.

The cap of this bottle is very easy to open and close, without the need of much twisting and turning compared to normal bottle cap. It is designed to be leak proof too.

Its size is just right, easy to put in bag and carry along. With only 600ml capacity, it won't feel heavy even when fully filled with water. Some people might prefer bigger capacity such as 1 litre, 1.5 litre or even 2 litre container, which will be heavier to carry. However, 600ml is not enough for whole day drinking. It needs refilling during half-day.

Snapware has another similar product called Eco Flip which is taller but thiner. Take note that the Eco Flip drinking bottle has even smaller capacity of 500ml only.

Friday, November 17, 2017

Malaysia schools terms and festival holidays (Chinese New Year, Hari Raya Aidilfitri & Deepavali) in 2018

Here are the Malaysia schools' term holidays in 2018 as announced by Ministry of Education (a.k.a. Kementerian Pendidikan Malaysia, KPM).

Schools in Group A (Johor, Kedah, Kelantan & Terengganu) will start their term holidays 1 day earlier than those in Group B (Perlis, Penang, Perak, Selangor, N.Sembilan, Melaka, Pahang, Sabah, Sarawak, KL, Putrajaya, Labuan).

As a result, Group A will have 1 more day of Year End Holidays than Group B.




As you can observe from the tables above, certain public holidays will fall within the school term holidays.

Below are the Malaysia schools' festival holidays in 2018 for Chinese New Year, Hari Raya Aidilfitri and Deepavali, as announced by Ministry of Education (a.k.a. Kementerian Pendidikan Malaysia, KPM).

Note that individual school can apply for additional off days  during these festival holidays period, which might subject to having replacement class for the additional off days applied.

The 2018 festival holidays for schools in Group A, which weekends fall on Friday and Saturday, are as follow:


 
The 2018 festival holidays for schools in Group B, which weekends fall on Saturday and Sunday, are as follow:

 
You might notice that the number of days for all these 3 festival holidays in 2018 are much shorter than 2017, which has 9 days for each of the festivals respectively.

Besides, since Hari Raya Aidilfitri in 2018 fall within the Mid-Year Holidays period, and also Hari Raya Qurban in 2018 fall within the Term 2 Holidays period, there will be no extra holiday for the schools during these 2 festivals.

For your knowledge and information:
  • Chinese New Year falls on the first day of the first month of a new Chinese lunar calendar year.
  • Hari Raya Aidilfitri (a.k.a. Hari Raya Puasa) falls on the first day in Shawwal (the 10th month in Islamic calendar year) after the last fasting month of Ramadan (the 9th month in Islamic calendar year).
  • Deepavali celebrated in South-India, which followed by the Indian race in Malaysia and Singapore, falls on Ashvina Krishna Chaturdasi which is the lunar day before the new moon (Amavasya) in the Hindu lunisolar calendar. The date is between mid-October to mid-November every year.

Tuesday, November 14, 2017

Fixed Lenovo Yoga 2 Pro laptop screen flickering at random time problem in Windows

This problem had been troubling me for quite a long time. Ever since a certain day, the screen of my Lenovo Yoga 2 Pro laptop running on Windows 10 will flicker at random time while I'm using it.

It seems to be related to a bug in its Intel HD Graphics display driver, but even though I kept on updating to the latest driver, the annoying screen flickering problem remained, until I performed the following setting.

The solution: disable Intel HD Graphics panel self-refresh function.

Your Windows account needs to have Administrator rights in order to successfully perform the following steps.

Step 1: Login to Windows and right click anywhere on your Windows Desktop.

Step 2: Click on "Graphics Properties..." in the pop-up menu.


Step 3: Select "Power" in the Intel HD Graphics Control Panel.


Step 4: Select "On Battery" in the left menu bar.

Step 5: Make sure Panel Self-Refresh is set to Disable.


Step 6: Click on Apply, then answer "Yes" to confirm saving the setting.

Hopefully, the screen flickering problem will be gone after this.

If you are also being troubled with the same screen flickering problem in your laptop which uses the Intel processor graphics accelerator, perhaps you can try out this solution and inform me whether it works for you or not.

Wednesday, November 8, 2017

Samsung printer business is now under HP

If you visit to Samsung printer support webpage now, you will find yourself eventually landing in HP website!


This is the indication of the completion of HP acquisition of Samsung printer business.

The two companies have been in competing position in the worldwide printer business for years. HP has been well-known in producing reliable printers for household and business use, while Samsung had been producing many award-winning printers that are affordable with up-to-standard performance and features in the same target segments.

In 2016, HP is the largest player in the worldwide printer market, while Samsung was the 10th.

In September last year (2016), the two companies announced this acquisition plan valued at US$1.05 billion. HP had explained the reason of this acquisition, being able to expand its portfolio and help to disrupt the US$55 billion A3 copier market with multi-function printers that are simple to use but have the same high performance level as that of copiers.


For Samsung investors:
  • Samsung had made the decision to dispose their printer business as they opined that this business is gradually declining.
  • As part of the agreement, Samsung will make a US$100~300 million equity investment in HP through open market purchases. 

For HP investors:
  • HP will gain access to more than 6,500 print patents from Samsung and a workforce of nearly 1,300 researchers and engineers that are experts in laser technology, imaging electronics and supplies and accessories.

For Samsung printers customers:
  • Samsung printers' customer support service will continue under HP.
  • All of Samsung’s existing printer products will continue to be sold under Samsung brand until the second half of 2019.
  • Samsung will keep on providing toners, parts and supplies for existing printers for another 5 years.
  • All discounts and programmes previously agreed between Samsung and customers will now be honoured by HP, and these will remain in effect through to all previously agreed end dates.

Tuesday, November 7, 2017

RACI and ARMI responsibility assignment matrix for GRPI teamwork

In teamwork (work done by more than one person) with clear goals, roles, processes, and interpersonal relationship (GRPI), such as a DMAIC (define, measure, analyze, improve, and control) project or a DMADV (define, measure, analyse, design, verify) project, the responsibility assignment matrix (RAM) can be used to clearly define the role and responsibility of each of the members in such teamwork.



One of the commonly used responsibility assignment matrix is the RACI matrix, which breaks down the teamwork into tasks, and map out who is responsible, who is accountable, who should be consulted, and who must kept informed for each of the tasks.

R - Responsible
  • The person who is assigned to carry out that particular task (the doer).
  • Each task must have at least 1 responsible person.
  • A task can have many responsible persons.
A - Accountable
  • The person who holds ownership of the task, and is responsible for its success or failure.
  • That person is authorized to make final decision on the task.
  • That person has the power to accept the completion of the task.
  • Each task can only have 1 accountable person.
 C - Consulted
  • Person who can be asked to provide opinion or input about the task while it is being worked on.
  • Normally a subject matter expert (SME).
  • The consultation should occur before decision or action is taken.
  • Each task can have either none, one, or more than one consulted persons.
  • If there are more than one, they should not be too many.
I - Informed
  • Person who needs to be kept informed that a decision or action has been taken.
  • Each task can have either none, one, or more than one persons to be kept informed.
  • If there are more than one, they should not be too many.
The RACI model can be extended to RASCI or RASIC by including a support role.

S - Support
  • Person who is able to help Responsible person in getting the task done.
  • The person possesses resource that can be shared out, or taking part in a supporting role.
  • Each task can have either none, one, or more than one support persons.

Beside RACI, the ARMI is another model that serves the similar purpose to define the level of support assigned to each stakeholders.

A - Approver
  • The person who sign-off a milestone and approve to move on towards the next milestone.
R - Resource
  • Persons who have the expertise or skillsets that are required in the project.
M - Member
  • Persons who are the project team member.
I - Interested Party
  • Persons who need to be informed about up-to-date status along the project.

Sunday, November 5, 2017

Top 30 property developers in The Edge Malaysia Property Excellence Awards 2017

The Edge Malaysia has just announced the Top 10 winners in their Property Excellence Awards 2017, which are:

  • 1. SP Setia Bhd (2016: #1)
  • 2. Sunway Bhd (2016: #3)
  • 3. Sime Darby Property Bhd (2016: #4)
  • 4. IJM Land Bhd (2016: #2)
  • 5. Eco World Development Group Bhd (2016: #6)
  • 6. UOA Development Bhd (2016: #7)
  • 7. Mah Sing Group Bhd (2016: #5)
  • 8. IGB Corp Bhd (2016: #9)
  • 8. IOI Properties Group Bhd (2016: #11)
  • 9. UEM Sunrise Bhd (2016: #10)
  • 10. Tropicana Corp Bhd (2016: #12)
Note that there are 2 developers ranked the 8th position in 2017. Most of the Top 10 winners in 2016 remain in the 2017 Top 10 list above, the only drop off is Gamuda Bhd - Property Division. IOI Properties Group Bhd and Tropicana Corp Bhd have successfully advanced into the list. Congratulations to SP Setia Bhd which managed to secure its 1st position for another year.

Following the Top 10 winners above, the subsequent Top 11-30 are:
  • 11. Eastern & Oriental Bhd
  • 12. MKH Bhd
  • 13. Matrix Concepts Holding Bhd
  • 14. Paramount Corp Bhd
  • 15. Malaysian Resources Corp Bhd
  • 16. OSK Holdings Bhd
  • 17. Glomac Bhd
  • 17. Selangor Dredging Bhd
  • 17. TA Global Bhd
  • 18. Sunsuria Bhd
  • 19. KSL Holdings Bhd
  • 19. WCT Land Sdn Bhd
  • 20. Land & General Bhd
  • 21. Hua Yang Bhd
  • 21. I-Bhd
  • 22. Wing Tai Malaysia Bhd
  • 23. Selangor Properties Bhd
  • 23. YTL Land & Development Bhd
  • 24. LBS Bina Group Bhd
  • 24. Malton Bhd
  • 24. SHL Consolidated Bhd
  • 25. Guocoland (Malaysia) Bhd
  • 25. Titijaya Land Bhd
  • 26. MCT Bhd
  • 27. Ivory Properties Group Bhd
  • 27. Ken Holdings Bhd
  • 27. Plenitude Bhd
  • 28. Symphony Life Bhd
  • 29. Eco World International Bhd
  • 29. MK Land Holdings Bhd
  • 29. Naim Holdings Bhd
  • 30. Tambun Indah Land Bhd

There are 2 winners of Outstanding Property Entrepreneur Award 2017:
  • Datuk Lee Tian Hock from Matrix Concepts Holdings Bhd
  • Tan Sri Ter Leong Yap from Sunsuria Bhd

There are 2 winners of Outstanding Property CEO Award 2017:
  • Datuk Khor Chap Jen from SP Setia Bhd
  • Sarena Cheah from Sunway Bhd - Property Division, Malaysia & Singapore

Tan Sri Ong Ka Ting is awarded with Outstanding Contribution to the Housing Industry Award 2017.

The following properties are awarded with Property Development Excellence Award 2017:
  • Mid Valley Megamall - Excellence in Suburban Family Mall
  • 1 Utama Shopping Centre - Excellence in Suburban Family Mall
  • Sunway Pyramid - Excellence in Suburban Family Mall
  • Pavillion Kuala Lumpur - International Luxury Shopping Mall
  • Regeneration of George Town - Excellence in Urban Regeneration

Friday, November 3, 2017

Typical types of procurement contracts

Procurement is the acquisition of goods, services or works from external source. A procurement contract is a legal binding agreement between the buyer and the seller.

In general, there are 3 broad categories of procurement contracts:

  • Fixed price (FP)
  • Time and material (T&M)
  • Cost reimbursement (CR)

Firm Fixed Price (FFP) or Lump Sum
  • Specifications or requirements are well-defined with clear statement of work.
  • There exist sufficient competition to determine a fair and reasonable fixed price.
  • If actual cost is more than agreed upon, seller bear the additional cost.
  • Buyer has the least cost risk.
  • To be fair to both parties, both buyer and seller need to have complete know-how of the work for precise price fixing.

Fixed Price Incentive Fee (FPIF)
  • Profits are adjusted based on seller meeting performance criteria in a progressive manner.
  • Performance can be measured in term of cost, time, and quality.
  • Successive targets are given to the seller.

Fixed Price Award Fee (FPAF)
  • An award (a.k.a. bonus) will be paid based on performance.
  • The total possible award amount is determined in advance and apportioned out based on actual performance.

Fixed Price Economic Price Adjustment (FP-EPA)
  • Normally applicable to long contract with uncertainties in future prices.
  • Price is adjustable depend on future cost of supplies and equipment required to be used.

Purchase Order (PO)
  • Simplest type of fixed price contract.
  • Only needs to be signed by buyer (unilateral party signing).

Time and Material (T&M)
  • Commonly used for service efforts whereby the level of effort is difficult to be determined when contract was awarded.
  • Buyer pays on per-hour or per-item basis.

Cost Contract (CC)
  • Cost is unable to be estimated accurately for fixed price due to exact scope of work is uncertain.
  • Seller receive no fee and make no profit. Charge as per actual cost.

Cost Plus Fee (CPF) / Cost Plus Percentage of Cost (CPPC)
  • Seller makes profit on top of the cost.
  • Fee varies with the actual cost.

Cost Plus Fixed Fee (CPFF)
  • Fee is pre-negotiated and fixed before work begins.
  • Fee does not vary with the actual cost.

Cost Plus Incentive Fee (CPIF)
  • Target cost is estimated and target fee is determined before work begins.
  • Seller will earn incentive from the savings if actual cost is less than the target cost.
  • Meanwhile, seller will also need to share cost overrun with buyer.

Cost Plus Award Fee (CPAF)
  • Buyer pays all the cost and a base fee plus performance bonus.
  • The award amount is pre-determined and apportioned out depending on actual performance.
  • Seller has the least cost risk.

Thursday, October 26, 2017

My Jean Perry coating cool gel comfort memory pillow

I have just bought some Jean Perry coating cool gel comfort memory pillows for my household.


As described in the product's description, the pillow is made with high density memory foam that is able to provide nice comfortable neck support for all kind of back, side and stomach sleepers. It has highly ventilated 3D mesh gusset allowing the memory foam within to "breath" thus minimizing heat build-up.

On one side, it is coated with a layer of cooling gel (the dark blue layer in the photo), material similar to those used in fever cooling pad. The other side of it does not have this cooling gel layer. As the pillow design is flat on both side (non-contour design), you can sleep with either side of it. When the sleeping environment is warm, you can sleep on the side with cooling gel to enjoy its cooling effect; when the environment is cold (such as on top of highlands), you can also sleep on the side without the cooling gel.

The pillow comes wrapped with a blue colour compact cooling satin stripe cover which is said to be naturally hypoallergenic, anti-microbial and dust mites resistant. Just like the fever cooling pad, the cooling gel has a kind of chemical smell. But after covered with this cooling satin stripe cover, you can hardly smell it. So don't worry about the smell with this Jean Perry pillow, as it might be an issue with certain competitors but for this Jean Perry pillow with satin stripe cover, the smell is mostly eliminated.

This is what inside the packaging box: the pillow nicely wrapped in plastic.


Sleeping with this pillow is really comfortable. You will not feel too cold at your head, as the cooling effect is more on eliminating heat from building up rather than providing ice cooling type of effect, so it is just nice and perfect for sleeping. Perhaps the effect can prevent people who used to sweat on pillow from sweating again.

You might note that below the "Jean Perry" trademark logo there is a word "Paris". I believe that "Paris" is part of the branding, rather than a place on earth. Jean Perry is actually a Malaysia product made by public listed company Yoong Onn Corporation Bhd (YOCB, 5159). Other brands of products by this same company include Novelle, Ann Taylor, Louis Casa, Genova, Niki Cains, Diana, Cotonsoft, Red Danielle, etc. The same company also has retail outlets called Home's Harmony which you can find in certain shopping malls, mostly in Klang Valley. Nevertheless, their products are of good quality and match with their price tag. Price discount is given during their sales promotional roadshow event in particular shopping mall, and sometimes in their online shop in Lazada.

Wednesday, October 18, 2017

REMAX RC-FC2 Letto handphone/GPS/tablet holder mount stand with 3-in-1 magnetic charging cable for car dash or table top

The REMAX RC-FC2 Letto car holder is apparently an upgraded version of the RC-FC1 holder.


It is improved to support 360 degree rotation for easy adjustment of the device's viewing angle. Its nickel metal plate can also lean forward and backward with 90 degree adjustment. It now comes with a 3-in-1 cable connector consisting lightning port, micro-USB port and USB Type-C port.

A sticky PU cushion is placed in front of its metal plate holder to hold the device placed on it at firm place to prevent dropping during situation such as emergency braking or sharp turning at high speed. Its round shape base is made of same material. This is how it looks like after assemble:


You can put it on your car dash, mainly for navigation purpose. You can also put it on your table top and act like a charging station.


It is strong enough to hold a 10" tablet firmly without much problem.


When you use navigation app that makes use on GPS function and will keep the screen always on, such as Waze or Google Maps navigation, your phone/tablet battery will drain out pretty fast.

The magnetic charging cable of the REMAX RC-FC2 is able to help you maintain the battery level or even to charge it to higher level. When charging, its LED light at the receptacle will turn red. When the device is fully charged, or the RC-FC2 is not performing charging action, the LED light at the receptacle is blue in colour.

Sunday, October 15, 2017

My Prolink PWP107G wireless presenter with air mouse function

Did you buy anything online during the recent #MYCYBERSALE event? I have bought a Prolink PWP107G wireless presenter with air mouse function at the cost of less than RM100.


This presenter is very straightforward and easy to use. Its wireless USB receiver is stored in a compartment at its bottom, which is plug-and-play in the Windows system.

In front of it, there are 6 buttons which their respective function is well explained behind the packaging front cover as well as in the user's manual booklet.

Its laser pointer button is located at the back, which can be easily controlled by your index finger.

At its right hand side, there are volume up and volume down buttons to control the sound volume.

At its left hand side, there is a power on/off toggle switch. You can switch it off when not in use, to save the battery lifespan.


Also come together inside the packaging box is a nice carrying pouch and 2 AAA alkaline batteries. It's documentation said that the 2 batteries can last for up to 100 hours of usage as a presenter, and up to 66 hours when its air mouse functions are also being used.


It works very will with Microsoft Powerpoint to start presentation (similar action to pressing F5 on keyboard), end presentation, page up, page down, blank the screen, and control the sound volume. However, it doesn't seems to work with LibreOffice Impress nor Adobe Acrobat Reader.

When it operates in air mouse mode, it works with all applications in Windows. You can use it to move the mouse cursor by your hand movement, and also to perform right click and left click with its respective button.

I would say it has all the necessary functions as a wireless presenter, with main limitation of only working well with Microsoft Powerpoint. At the same time, it is also a pretty nice air mouse which function similarly with a basic 2-button mouse. Yet at the same time, you can use it to control the sound volume.

Monday, October 9, 2017

Book: How Business Works - A Graphical Guide to Business Success by DK

DK of Penguin Random House is a publisher that differentiate themselves by producing a series of books that are very colourful, full of graphics and charts, and not so wordy.

How Business Works - A Graphical Guide to Business Success is one of them. It explains many important business concepts in a fun, easy to understand way. Its content is up-to-date with today's business environment, covering topics about leading-edge information system, modern business practices and industry standards.


I find this book very suitable for the busy start-up entrepreneurs, students who are planning to go to business school, business school students who need a quick revision, traditional businessmen who want to keep abreast of today's business world, managers, investors, or anyone who are interested to know about how businesses in this 21st century work.

This book is divided into 4 major sections with their respective chapters as follow:

1. How Companies Work
  • Business ownership
  • Start-ups
  • Buying and selling business
  • Who's who
  • Corporate structure
  • Human resources
2. How Finance Works
  • Financial reporting
  • Financial accounting
  • Management accounting
  • Measuring performance
  • Raising finance and capital
3. How Sales and Marketing Work
  • Marketing mix
  • Marketing approaches
  • Outbound marketing
  • Inbound marketing
  • Business development
  • Information management
4. How Operations and Production Work
  • Manufacturing and production
  • Management
  • Product
  • Control
  • Supply chain
This is how the pages content in the book look like:


This book is pretty comprehensive, covering a broad overview of essential business knowledge and concepts, though not going in-depth to the very detail.

One thing I found for this book to improve in future edition is that: in certain topics, it will mention about some interesting statistical statements, such as "44% of US companies had distinct CEO and chairman roles in 2012 - up from 21% in 2001". The book actually cited the sources of those statements in its Acknowledgements section at its very back, behind all the Index pages. While reading the book, readers like me have no idea about where are the sources of those statements because it is not mentioned anywhere that there is a "hidden" subsection called "sources of statistics, facts and quotes" under the Credits section inside its Acknowledgements. If you don't read until the last word of this book, you might possibly unaware of such subsection and wondering where the quotes are coming from. I suggest the editors of the book to mention about the location of this subsection in the Introduction so that we readers can be aware of it.

Saturday, October 7, 2017

Book: Cracking the Coding Interview (6th Edition) by Gayle Laakmann McDowell

Whether you are a fresh graduate or an experienced software developer, if you are thinking about landing your dream job in the software engineering team of one of the world's top IT companies such as Google, Apple, Facebook, Microsoft, Amazon, Palantir, etc., this is the book for you to get well prepared for your job interview.

In fact, this book is suitable for anyone who want to secure a software engineering job in the global IT industry, regardless of level from coder to development team lead to manager to even director or VP.

If you are already working in the industry, the author also alerts you that in the event your company undergoes acquisition or acquihire by those IT big gun companies, eg. the recent case of Google-HTC deal, existing staff of the acquired company (which could be including the CEO himself) are likely required to go through similar interview process, as "they don't want acquisitions to be an easy way into the company" (page 19).



The author, Gayle, is a talented software engineer herself, having working experience at Google, Microsoft and Apple. She had gone through the experiences of being an interviewee as well as interviewer in those companies. Now, she is the founder and CEO of consulting company CareerCup.com.

For computer science graduates, this book will walk through a very quick revision of the important topics you have already learnt and passed in your college, things like the Big "O", data structures (such as hash tables, linked list, stack, queue, tree, graph, etc.), algorithms (such as sorting, searching, bit manipulation, etc.), object-oriented design, system design with scalability, programming logic such as recursion, etc.

If you are not a computer science graduate but have learnt about computer programming and is eager to enter into the software engineering industry, these topics give you some idea of what your computer science graduated counterparts have gone through in their college studies (of course, the whole course covers much more topics than the above list. Those are just some of the fundamentals which they learnt during the first 2 years of their study). You might not be required to know in-depth of such knowledge to secure a software engineering job, such as how to apply them in assembler design, compiler design or operating system memory management design, but it is good for you to know the concept of those knowledge in order to pass the technical interview test. It is out of the scope of this book to teach you such topics. It highlighted them for you to pick up the knowledge from other sources such as computer science textbooks or online courses.

This book contains 189 programming questions and solutions to give you an idea of how you will be tested during your technical interview session. Well, don't be frightened by the questions as they are the level used at Google, Apple, Facebook, Microsoft and those top-notch IT companies who only target to hire highly talented employees. You will probably be tested with less challenging questions, but yet within the domain of similar computer science knowledge. At least, you should be able to write simple function such as listing out the Fibonacci sequence.

Bear in mind that technical knowledge is just a portion of the interviewee assessment. There are other area of evaluation such as soft skills about handling ambiguity, customer focus, communication, passion for technology, teamwork, leadership, etc. before you are offered the job.

Thursday, October 5, 2017

KidoCode HoC Computer programming class for young children and teens

I came across KidoCode in an education fair. KidoCode is a computer coding and maths training center targeting children of age group from 6 to 18, founded by 2 Iranian (Hossein a.k.a. Unclecode and Maysam) who are very passionate in educating the young generation about computer programming, logical thinking and mathematics.

I have brought my kid to attend their 4 hours free trial class at their HQ in Solaris Mont Kiara (above Cold Storage supermarket). That 4 hours session enabled us to know more about them, took a look and feel about their learning environment, let the kid to have hands-on introductory class about computer programming, which included simple programming to create mobile app in an Android tablet, and electronic programming on an Arduino kit. This is essential to ensure the kid likes the learning environment and the curriculum before making decision whether to enrol with them or not.

Parallel with the kid's 4 hours free trial class, there was also a 1 hour session for parents for them to introduce their value proposition, their unique way of running the classes, curriculum and syllabus. I am pretty impressed with their holistic vision, mission and plans to train Asian children to be competent in computer programming for fun and profit (yes, they encourage entrepreneurship after the kid has created something awesome in their journey of codings). As a result, I have enrolled my kid to their 50 Hours of Code (HoC) programme.

The 50 HoC is an introductory course for the kid to build up the necessary foundation in computer programming. A minimum of 50 hours is allocated for the kid to complete the course. 50 hours is the minimum because they'll give bonus hours to the kid based on several promotional criterias, at no additional charge, which could added up to over 80 hours.

This 50 HoC introductory course comes with a K-Box which the kid can bring home for own practice and continuous development, which contains:

  • Arduino board with electronic components
  • Raspberry Pi 2 with WiFi adapter and Case
  • Android smartphone for mobile apps and games programming
  • Some free gifts

All the following subjects will be covered in the 50 HoC programme:
  • Python programming language with Turtle graphics using online KStudio IDE

  • Mobile apps development using MIT App Inventor
  • Electronics programming using Arduino and Raspberry Pi
  • Web development using Cloud9

  • Game programming
  • Information security

The HoC is consumed at KidoCode training centers. The kid will learn at his own pace. Fast learners will learn more in-depth and given more challenging exercises, while slow learners are still able to go through the breadth of learning though not as deep. Beside the kid, the parents (both father and mother) are also given the same amount of HoC at no additional charge, for them to optionally learn the same course together with their kid, and each of daddy, mummy and kid will be learning at their own respective pace and could go through different learning path.


KidoCode is opened from 10am to 10pm daily including weekends and public holidays. Other than the first Welcome Session which needs to make appointment prior to attending, the kid (and parents) can walk in anytime during the operating hours to consume their HoC. A dedicated computer will be allocated, and personal trainer will attend to the kid (and parents) throughout the session. Students can take their break at anytime, which will stop their HoC hour glass counter, only to resume when the break is over. Free flow of food and drinks is provided at the premise.

 After the 50 HoC course, the kid can proceed with more advanced courses including:
  • Code and maths (30 HoC)
  • Mobile apps development (100 HoC)
  • Electrogramming (80 HoC)
  • Game coding (70 HoC)
  • Web development (100 HoC)
  • Computer security and cryptography (40 HoC)
  • Geek coding (100 HoC)
  • BioInformatics (50 HoC)

You can find out more information about KidoCode by visiting to their website.

If you are also interested to attend their 4 hours free session, you can click here to locate the online registration form.

Friday, September 29, 2017

Education is possibly not the key factor to good income

On the basis of Professor Jesse Rothstein's research paper, American journalist Rachel M. Cohen has posted an interesting article in The Atlantic with argument that "Education Isn't the Key to a Good Income". Her article is based on the American society, which is pretty much recognized for its meritocracy culture.

Rachel's article has brought me to Jesse's earlier write-up posted in Washington Center for Equitable Growth website titled "There is more to equal access to a good education than sound school budgets" containing more insight about her research and findings.

So, are you having an equal chance to climb up the economic ladder with enough education and hard work? If this is not the case for America, what about the other parts of the world?

If education is not the key determinant of equitable economic opportunities across generations, what will be the more likely factor that can contribute to better income? Take a look in the diagram below.

 
Researcher opined that in this subject matter, the structure of the labour market is more likely to be a much bigger driver that the school quality.

It seems that the key determinant for labour income is the supply-demand factor of the skills matching with the market. Non-labour income and spousal earnings indeed play a significant part as the determinant too.

Wednesday, September 20, 2017

CCleaner official download was hacked and infected version containing malware released to public - how to fix

CCleaner by Piriform (recently acquired by Avast) is a famous software that comes with both free and paid versions, made available to Windows, Mac and Android users to do housekeeping in their computer or Android smart mobile device to clean up junk files and junk registry entries, in order to optimize the computer to maintain running smoothly. It claims to have achieved over 2 billion of downloads now. There is also a cloud version available.


If your computer has CCleaner installed, you need to be aware that during the period between mid-August to mid-September 2017, the official download site of CCleaner was hacked, and the official CCleaner installer had been replaced with a version containing malware that will compromise your computer. The "contaminated" CCleaner version had been distributed to all the 3rd party download sites as well!

If you installed or updated your CCleaner with the version containing the malware, then your computer is infected.

This is a kind of supply chain attack, will is considered a very effective way to distribute malicious software into target organizations or general public. The attackers are relying on the trust relationship between the supplying source (such as official release source) and the consumer. This trust relationship is then abused to attack organizations and individuals.


Which versions are affected?

  • CCleaner v5.33.6162
  • CCleaner Cloud v1.07.3191
It is said that the affected versions were for 32-bit Windows PCs, and the CCleaner for Android is probably safe. Newer official released versions of CCleaner (version 5.34 and above) are also safe as there will be no malware included (finger-crossed).


What the malware possibly do?

This malware was detected and reported separately by Cisco's Talos Intelligence Group and also the Morphisec's security team.

According to their analysis, this malware will collect information in your computer, including network connection detail, running processes, installed software, anything running with administrator privileges, etc. It will encrypt the information and send back to the hacker's server using HTTPS posting method.

The hacker's server can make use of backdoor created by the malware to send codes to be executed with administrator privileges at the infected computers.


How to fix?

If your Windows computer is installed with CCleaner, you should uninstall it immediately, regardless of the version. After that, if you still want to continue using CCleaner, you can download and reinstall the uninfected latest version (version 5.34 and above) from its official download site.


Reference sources:

Hint: Click on the "Older Posts" link to continue reading, or click here for a listing of all my past 3 months articles.