Posted by leepeng on August 25, 2010
Received this picture couple of months ago. Suppose to be something for us to feel funny and laugh at.
However, the similar picture was actually printed on my university software engineering text book.

It makes me ponder on communications.
A solution can only considered good if it meet client’s objective and solve their problem. In order to do this, understanding and passing of correct information is very important.
In industry practice, we have tools like functional specs, flow charts, screen prototypes and different kind of diagrams.
So do we come out with these documents just to fulfill the software engineering lifecycle or because we quoted documentation or just for the sake of coming out some documents so that both client and us feels good?
I felt documents is useless if it is not a tool for communication. When we draft a functional specs, we have to think in clients’ perspective to come out with something that they can understand so that we can discuss and confirm various business concepts and requirements using the document. At the same time, if we need client to visualise, we have to come out with screens so that we can discuss further or to trigger more views from them so we can have deeper understanding of their needs.
We are learning and doing our best to improve our communications so that we can have more happy customers.
Posted by leepeng on
Why SSL?
SSL stands for Secure Socket Layer.
SSL pages/sites are start with HTTPS (e.g. https://www.ctc.com.sg/paygate/payment.php)
You will see a lock icon in browser if it is SSL
It provide 2 main function: Encryption and Authentication.
Encryption
When we fill in a form in browser and submit, in default setting, the information in the form is transmit to the server as plain text.
This become not secure if the form ask us for sensitive information like NRIC, credit card info etc.
SSL can encrypt the transmission of info to ensure security.
Authentication
When a visitor come to a website, especially those require payment, he will always want to be sure that the identity of the website is what it claim to be.
Consider the website www.sony-asia.com. How we know this website really belongs to Sony. I can always register a domain call www.sony-southafrica.com and impersonalized as Sony.
SSL contains Digital Certificate to certified the website as who it claimed to be.
SSL Selection
There are many SSL provider and price can be very different depends on function and brands.
In general, there are 2 groups
SSL Cert with Domain name Authentication Only
This will certified that the domain A is really belongs to domain A.
We will recommend this if the website is just a pure online store and the business is not of big brand.
Another reason is the website only need SSL to utilise the encryption feature and authentication is not a big concern.
** Notice the Common Name (CN) and Organization (O) are the domain name.
Here are some package options
https://www.godaddy.com/gdshop/ssl/ssl.asp (Standard SSL)
https://www.thawte.com/ssl-digital-certificates/ssl123/index.html
http://www.geotrust.com/ssl/quick-ssl-certificates/
SSL Cert with Business Identity Authentication
This will certified that the website belongs to a certain business.
The approval might require more email authentication or event submit a fax or telephone call.
** Notice the Organization (O) is stated as TakeMeToAsia Pte Ltd
Here are some package options
https://www.godaddy.com/gdshop/ssl/ssl.asp (Deluxe SSL)
https://www.thawte.com/ssl-digital-certificates/ssl/index.html
http://www.geotrust.com/ssl/ssl-certificates/
http://www.verisign.com.sg/ssl/buy-ssl-certificates/secure-site-ssl-certificates/
Posted by jessette on May 7, 2010
Last year, Forecepts launched Orchard Central Mall’s website in time with the mall’s soft opening.
This year, we are happy to announce that we have worked with Orchard Central to update the look of their site. We came up with a simpler and sleeker design set against a very dark gray colour with the photo of the mall in the background.
If you ever passed along Orchard Road during night time, Orchard Central’s psychedelic lights illuminate the skyline. Our new design echoes the dynamism and playful interplay of their colour and lights. The rollover effect at the main navigation and the orange and pink small squares on the homepage and inner pages is a direct interpretation of the mall’s night lights.
The site is fully equipped with CMS (Content Management System) which allows the client full access to the database system.
Below is the new and old design for Orchard Central website.

Orchard Central's New Web Design

Orchard Central's Old Web Design
Posted by leepeng on April 28, 2010
There is always a voice to phase out IE totally due to its poor compliant to W3C standard. I as a developer also hope this can happen one day or IE will one day FULLY compliant with standard.
However, when I think deeper, this might not happen overnight due to historical reason.
In the late 90s, when IE4 released, it almost wipe through the entire Internet world with the “revolutionary browser” that build in to MS Windows.
At that time, both Apple and Netscape are at the borderline of bankruptcy.
Almost all PCs in the world are with IE4.
In that time, W3C had just setup and they struggled to fight with the giant which had its own “standard”
Microsoft had its development tools, back office server families which do not subject web standard (as there were no standard, MS became its own standard)
In addition, developers at that time developed websites and sometime Java Applets / ActiveX that runs on IE as that was the user base. (During that time, we write code on IE and test on Netscape)
What I must say is, Microsoft carried too much baggage while trying to move forward in the browser environment.
Too much backward compatibility issues to cater for its users based that they established during the “golden era”
They cannot afford to do a total switch to Gecko or WebKit engine. I believe this is not just purely corporate image, but they have to put a lot of consideration of their user base.
[Ref: http://en.wikipedia.org/wiki/Comparison_of_layout_engines]
The world has changed now which the competitors bloomed with web standard straight at the beginning.
And we developers love web standard.
We love Firefox, Chrome, Safari. (I believe non of Foreceptian has IE as default browser)
As technologist, we chase for new standards and features like HTML5 and CSS3. They can make the world better.
However, lets see from this perspective…
Forecepts is a company that provide professional web service.
We have clients who are technology fanatics and who very familiar with web 2.0 technology. This group of people will have 0% resistant from compliant to modern browser.
We also have clients who from the corporate, who carried the same heavy baggage like MS. (or who has poor MIS department)
I believe we are at transition period. MS is receiving heavy market pressure in the browser industry and they have no choice but to change before it been phase out totally.
As web servicing company, I believe our current position is to continue to educate our clients and provide the correct consultation (for example advise them to install Firefox if they can’t upgrade their IE due need to access legacy system); and with some endurance.
I have a dream, that one day I will see our programmers been judged by quality of business logic and great usability; not by if the code is compatible across browsers. As all browsers are compliant to 1 standard
In the late 90s, when IE4 released, it almost wipe through the entire Internet world with the “revolutionary browser” that build in to MS Windows.
At that time, both Apple and Netscape are at the borderline of bankruptcy.
Almost all PCs in the world are with IE4.
In that time, W3C had just setup and they struggled to fight with the giant which had its own “standard”
Microsoft had its development tools, back office server families which do not subject web standard (as there were no standard, MS became its own standard)
In addition, developers at that time developed websites and sometime Java Applets * ActiveX that runs on IE as that was the user base. (During that time, we write code on IE and test on Netscape)
What I must say is, Microsoft carried too much baggage while trying to move forward in the browser environment.
Too much backward compatibility issues to cater for its users based that they established during the “golden era”
They cannot afford to do a total switch to Gecko or WebKit engine. I believe this is not just purely corporate image, but they have to put a lot of consideration of their user base.
[Ref: http://en.wikipedia.org/wiki/Comparison_of_layout_engines]
The world has changed now which the competitors bloomed with web standard straight at the beginning.
And we developers love web standard.
We love Firefox, Chrome, Safari. (I believe non of Foreceptian has IE as default browser)
As technologist, we chase for new standards and features like HTML5 and CSS3. They can make the world better.
However, lets see from this perspective…
Forecepts is a company that provide professional web service.
We have clients who are technology fanatics and who very familiar with web 2.0 technology. This group of people will have 0% resistant from compliant to modern browser.
We also have clients who from the corporate, who carried the same heavy baggage like MS. (or who has poor MIS department)
I believe we are at transition period. MS is receiving heavy market pressure in the browser industry and they have no choice but to change before it been phase out totally.
As web servicing company, I believe our current position is to continue to educate our clients and provide the correct consultation (for example advise them to install Firefox if they can’t upgrade their IE due need to access legacy system); and with some endurance.
I believe, one day, I will see my children who will be judged by quality of business logic and great usability; not by if the code is compatible across browsers. As all browsers are compliant to 1 standard 
Posted by leepeng on August 29, 2009
Setting up an online shop is not straight forward as some might think. It is far beyond getting someone to develop a e-commerce website or installed a off-the-selve ecommerce solution.
Just share some experience we gained after developing some e-commerce solutions for our clients.
Are You The Pro?
I do not mean are you tech-pro; but are you your product-pro?
Personally I don’t believe you can sell something online if you do not have in-dept professional knowledge in the product you selling. One of our very successful client is a jigging master who selling popping and jigging equipments online. He kicked start with and online shop and eventually evolve to a real retail store. In addition, he also runs a fishing hobby forum and organising fishing trips to various hot-spots.
Where to Start?
Many people jump into conclusion that having eShop means building a e-commerce website. I always advise my friends to start small at places like forum and ebay, or promoting products at blog. Only invest in online store when they have sufficient product range and loyal customers. Do not start without a base. Do not think about the big market before you can establish a small market.
Payment
We normally advise people to start with a mixture of offline payment and PayPal at the beginning. Only consider premium payment gateway like Citibank when they have substantial online transactions.
Shipping
Shipping is an area that neglected by many during the planning of their e-commerce site. However, it play a major part as it affect the total price that the buyer going to pay. The value of the product must be justifiable enough for the shipping fee paid.
Take for example a 500g package will take about $65 to ship from Singapore to US using UPS. The fee will become ridiculously high if the item only cost $20!
Merchant can think creatively for the cheap and fast delivery of the products. Take fore example small items like neglacts can actually be shipped as registered mail instead of parser.
Marketing
It is actually a myth that an e-commerce website will be “self-market” after it goes live.
Just like normal shop front, nobody will know you if you do not market your shop.
Google will not rank you #1 in a very common search keyword after your website goes live.
There will be a lot of effort in doing visitation monitoring, search engine optimisation, search engine marketing, online marketing using various social channels or event offline marketing.
Posted by leepeng on July 3, 2009
When new clients approach us for website revamp and indicate that they want to keep the existing hosting, the first thing we normally like to check with them is the server the website is running. We develops websites in PHP5 and ASP.NET 2 so this information is quite useful for us.
However the most answer is “I don’t know”.
So we need to find a way check this information.
Firefox has a cool add-ons call HTTP Header which helps us in this area.


There is a small bug in the current version which showed Japanese.
You will notice that this add-on can help you to know the web server type (apache / IIS) and the application server (PHP 5, ASP.NET 2).
These information are actually embeded in the HTTP header and our browser does not show them. This ad-on do no magic but to show whatever existing information to us.
Anyway, if you are not Firefox user, start using Firefox now. You will be happy always
Posted by leepeng on
Have you ever encounter the situation which after getting your hosting for a while, you start to notice the email send from your server couldn’t reach your recipient; especially when the email is sent direct from the webserver using sendmail (e.g. mail function of PHP)
I myself is not hosting expert. However, after a few shocks, I somehow figure out some simple mis-configuration that easily happen to hosting engineers while setting up new server.
Two main cause: 1st is the missing of qualified domain name and second is missing of SPF setting.
These two can be observe easily by looking at the email header content in GMail. Try create a simple testmail.php which will send email to your GMail account using PHP’s mail function.
<?php
mail("leepeng@gmail.com", "Test Mail", "Test 123", "From: something@xx.com");
?>
Then open the source / original message of the email.
Here is an example of “Healthy” email
Delivered-To: leepeng79.chen@gmail.com
Received: by 10.142.43.3 with SMTP id q3cs50083wfq;
Tue, 30 Jun 2009 02:03:53 -0700 (PDT)
Received: by 10.114.255.12 with SMTP id c12mr12997276wai.11.1246352633584;
Tue, 30 Jun 2009 02:03:53 -0700 (PDT)
Return-Path: <bounce@organisedmum.com.sg>
Received: from organisedmum.com.sg (organisedmum.com.sg [116.12.50.227])
by mx.google.com with ESMTP id 1si12092283pxi.65.2009.06.30.02.03.52;
Tue, 30 Jun 2009 02:03:52 -0700 (PDT)
Received-SPF: pass (google.com: best guess record for domain of bounce@organisedmum.com.sg designates 116.12.50.227 as permitted sender) client-ip=116.12.50.227;
Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of bounce@organisedmum.com.sg designates 116.12.50.227 as permitted sender) smtp.mail=bounce@organisedmum.com.sg
Received: (qmail 20407 invoked by uid 48); 30 Jun 2009 17:03:51 +0800
Date: 30 Jun 2009 17:03:51 +0800
Message-ID: <20090630090351.20397.qmail@organisedmum.com.sg>
To: leepeng79.chen@gmail.com
Here is an example of “unhealthy” email
Delivered-To: leepeng79.chen@gmail.com
Received: by 10.142.43.3 with SMTP id q3cs126200wfq;
Thu, 2 Jul 2009 00:18:36 -0700 (PDT)
Received: by 10.224.28.130 with SMTP id m2mr10174634qac.52.1246519115111;
Thu, 02 Jul 2009 00:18:35 -0700 (PDT)
Return-Path: <nobody@vm4.kfc>
Received: from vm4.kfc (202-150-217-11.rev.ne.com.sg [202.150.217.11])
by mx.google.com with ESMTP id 15si3872346yxe.130.2009.07.02.00.18.34;
Thu, 02 Jul 2009 00:18:34 -0700 (PDT)
Received-SPF: neutral (google.com: 202.150.217.11 is neither permitted nor denied by best guess record for domain of nobody@vm4.kfc) client-ip=202.150.217.11;
Authentication-Results: mx.google.com; spf=neutral (google.com: 202.150.217.11 is neither permitted nor denied by best guess record for domain of nobody@vm4.kfc) smtp.mail=nobody@vm4.kfc
Received: from nobody by vm4.kfc with local (Exim 4.69)
(envelope-from <nobody@vm4.kfc>)
id 1MMGZG-0005GT-VS
for leepeng79.chen@gmail.com; Thu, 02 Jul 2009 15:18:51 +0800
To: leepeng79.chen@gmail.com
If you observe, you will notice that the “healthy” example has a qualified domain name which associate with the IP address. However the “unhealthy” exmple does not have a qualified domain name. The mis-configure one will either has setting localhost or just the server name in the private network (vm4.kfc for this example)
Second is the “healthy” example can pass GMail’s SPF check but the “unhealthy” one have the mark of neutral. SPF is to help make sure the server is not used for spamming. When GMail said it is neutral, it means GMail don’t know if the server is right or wrong.
My experience is that GMail has been very generous in their antispam as it will accept most of the emails. However, if you notice these 2 mis-configuration, it will be likely the mail would not able to deliver to Hotmail, Yahoo, AOL or some corporate email addresses.
So now you have something to argue with the hosting engineer
The last thing to check is to make sure your server’s IP address is not blacklisted. One common place to check is at www.spamhaus.org