<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	
	xmlns:georss="http://www.georss.org/georss"
	xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#"
	>

<channel>
	<title>Web Tools Archives - Michael Sunarlim</title>
	<atom:link href="https://sunarlim.com/category/web-tools/feed/" rel="self" type="application/rss+xml" />
	<link>https://sunarlim.com/category/web-tools/</link>
	<description>Random blurbs about web development, e-commerce and technology</description>
	<lastBuildDate>Fri, 05 Aug 2016 10:35:06 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.4.5</generator>

<image>
	<url>https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/07/cropped-MS_Square_512x512.png?fit=32%2C32&#038;ssl=1</url>
	<title>Web Tools Archives - Michael Sunarlim</title>
	<link>https://sunarlim.com/category/web-tools/</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">30613895</site>	<item>
		<title>Shopify PageSpeed Score: Pushing the limits on Bluelounge website</title>
		<link>https://sunarlim.com/2016/08/shopify-pagespeed/</link>
					<comments>https://sunarlim.com/2016/08/shopify-pagespeed/#respond</comments>
		
		<dc:creator><![CDATA[Michael]]></dc:creator>
		<pubDate>Tue, 02 Aug 2016 18:35:48 +0000</pubDate>
				<category><![CDATA[Case Studies]]></category>
		<category><![CDATA[E-Commerce]]></category>
		<category><![CDATA[SEO]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[Web Tools]]></category>
		<category><![CDATA[Work Related]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[pagespeed]]></category>
		<category><![CDATA[seo]]></category>
		<category><![CDATA[shopify]]></category>
		<guid isPermaLink="false">https://sunarlim.com/?p=2242</guid>

					<description><![CDATA[<p>In order to improve the site's SEO even further, Bluelounge requested to improve their Shopify site's PageSpeed score to above 90/100 on both Desktop and Mobile. These are my notes to achieve 95/100 PageSpeed score on an e-commerce site. The steps explained here may not be applicable to all Shopify powered sites, but hopefully you will be able to pick up a point or two. </p>
<p>The post <a href="https://sunarlim.com/2016/08/shopify-pagespeed/">Shopify PageSpeed Score: Pushing the limits on Bluelounge website</a> appeared first on <a href="https://sunarlim.com">Michael Sunarlim</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><a href="https://www.bluelounge.com/" target="_blank">Bluelounge</a> is an International design studio and recognized for its clever and unique products to solve everyday problems. Their products range from cable management, chargers, device stands, bags, to desk. I had worked with them from 2007 to 2013. When I started to go freelancing full-time, they were also one of my first clients. I consulted for their e-commerce requirements at the time and advised to switch their platform to <a href="https://www.shopify.com/?ref=mayks" target="_blank">Shopify</a>. They took the suggestion and so the development began.</p>
<p>The new site was built completely from the ground up. We developed the custom theme with primary goal to have the fastest load time while keeping all of required functionality and ability to display unique page layout for each of Bluelounge&#8217;s 30+ products. I invited <a href="https://about.me/nizamilputra" target="_blank">Rizqi Nizamil Putra</a> into the team to help with the front-end development as time was of the essence as well. We completed the project on time and boy, the results were better than our expectations. Thanks for Shopify&#8217;s solid infrastructure, most of the web pages loaded in less than 2 seconds. A critical factor when you are building an e-commerce site.</p>
<div id="attachment_2252" style="width: 750px" class="wp-caption aligncenter"><a href="https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/www.bluelounge.com_.png?ssl=1"><img fetchpriority="high" decoding="async" aria-describedby="caption-attachment-2252" class="size-large wp-image-2252" src="https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/www.bluelounge.com_.png?resize=740%2C580&#038;ssl=1" alt="Bluelounge new website with Shopify" width="740" height="580" srcset="https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/www.bluelounge.com_.png?resize=1024%2C802&amp;ssl=1 1024w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/www.bluelounge.com_.png?resize=300%2C235&amp;ssl=1 300w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/www.bluelounge.com_.png?resize=768%2C602&amp;ssl=1 768w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/www.bluelounge.com_.png?resize=600%2C470&amp;ssl=1 600w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/www.bluelounge.com_.png?resize=780%2C611&amp;ssl=1 780w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/www.bluelounge.com_.png?resize=1200%2C940&amp;ssl=1 1200w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/www.bluelounge.com_.png?w=1440&amp;ssl=1 1440w" sizes="(max-width: 740px) 100vw, 740px" data-recalc-dims="1" /></a><p id="caption-attachment-2252" class="wp-caption-text">Bluelounge new website with Shopify</p></div>
<h2>You always want to make it better and faster&#8230;</h2>
<p>Move forward to June 2016, Bluelounge came with a very specific but interested request. In order to improve the site&#8217;s SEO even further, they asked whether it was possible to get the PageSpeed score above 90 for both Desktop and Mobile from <a href="https://developers.google.com/speed/pagespeed/insights/" target="_blank">Google&#8217;s PageSpeed Insights</a> and an A from <a href="https://gtmetrix.com/" target="_blank">GTMetrix website performance tool</a>.</p>
<p>To be honest, I initially considered the request quite difficult considering one of Shopify&#8217;s major limitations was that we did not have full control of the server and apps. After a bit of research on Shopify&#8217;s forums, this was a very common issue as found <a href="https://ecommerce.shopify.com/c/ecommerce-design/t/page-speed-issues-277406" target="_blank">here</a>, <a href="https://ecommerce.shopify.com/c/ecommerce-design/t/help-with-page-speed-291747" target="_blank">here</a>, and <a href="https://ecommerce.shopify.com/c/ecommerce-design/t/page-speed-issue-335193" target="_blank">here</a>. There are many suggestions there which you could take to improve the site&#8217;s performance bit by bit, mostly were already applied on Bluelounge website, but probably not enough to make it get &gt;90 PageSpeed score.</p>
<p>I took on the job nevertheless, the challenge intrigued me.</p>
<h2>Performance analysis</h2>
<p>When trying to improve a website&#8217;s performance, whether for SEO, load speed, or conversion rates, the first thing to do is to breakdown <span style="text-decoration: underline;">what have been done correctly</span> and <span style="text-decoration: underline;">what&#8217;s still missing</span>. That was exactly what I did.</p>
<h4>Theme related items done:</h4>
<ol>
<li>Avoid CSS @import; except for the web fonts which are loaded from MyFonts</li>
<li>Valid HTML structure; no console errors</li>
</ol>
<h4>Content based items done:</h4>
<ol>
<li>Optimize images</li>
<li>Specify image dimensions</li>
<li>Serve scaled images</li>
</ol>
<h4>Important items done by Shopify by default:</h4>
<ol>
<li>Leverage browser caching</li>
<li>Enable gzip compression</li>
<li>Enable Keep-Alive</li>
</ol>
<h4><span style="text-decoration: underline;">Critical items to improve:</span></h4>
<ol>
<li>Minify CSS</li>
<li>Minify JavaScript</li>
<li>Eliminate render-blocking JavaScript and CSS in above-the-fold content</li>
</ol>
<p>Even with the fast load time, PageSpeed still considered the site&#8217;s performance below standard and only rated it 83/100 for Desktop and 66/100 for Mobile.</p>
<div id="attachment_2248" style="width: 750px" class="wp-caption aligncenter"><a href="https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-score-before.png?ssl=1"><img decoding="async" aria-describedby="caption-attachment-2248" class="wp-image-2248 size-large" src="https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-score-before.png?resize=740%2C635&#038;ssl=1" alt="Bluelounge – PageSpeed score before" width="740" height="635" srcset="https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-score-before.png?resize=1024%2C879&amp;ssl=1 1024w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-score-before.png?resize=300%2C258&amp;ssl=1 300w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-score-before.png?resize=768%2C659&amp;ssl=1 768w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-score-before.png?resize=600%2C515&amp;ssl=1 600w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-score-before.png?resize=780%2C670&amp;ssl=1 780w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-score-before.png?w=1200&amp;ssl=1 1200w" sizes="(max-width: 740px) 100vw, 740px" data-recalc-dims="1" /></a><p id="caption-attachment-2248" class="wp-caption-text">Bluelounge website PageSpeed score result before optimization</p></div>
<p>The first two items were relatively easy to do, with the right tools.</p>
<h3>Minifying and combining CSS files</h3>
<p>The website&#8217;s stylesheet had been built using SCSS with <a href="http://getbootstrap.com/" target="_blank">Bootstrap</a> for the framework, so minifying the output file alone was not enough to make PageSpeed happy with the file sizes.  I had to improvise. Using <a href="https://github.com/twbs/bootstrap-sass" target="_blank">Bootstrap for Sass</a>, I rebuilt the CSS by hand-picking Bootstrap components that were actually used and eliminated the rest. I also carefully merged individual CSS files into a single master stylesheet for most of the pages.</p>
<p>After minified, the final <span class="theme:github lang:default decode:true crayon-inline">bluelounge.v42.css</span>  is about 123KB in size.</p>
<h3>Minifying and combining JavaScript files</h3>
<p>Same as CSS, minifying alone was not enough if they files were still fragmented. PageSpeed really factored in the number of calls it had to make to load a web page. This time it was a bit more tricky though, as with JavaScript a small error or wrong order could break critical shopping cart functionality. It took extensive trial and error tests to get the desired output.</p>
<p>Luckily PageSpeed is more forgiving when it comes to JS files and I did not have to merge everything into a single file as I had done for the CSS. I still managed to combine 7 JS files into one to reduce the number of requests.</p>
<p>You could use these tools to combine and minify CSS and JS files:</p>
<ul>
<li><a href="http://jscompress.com/" target="_blank">JSCompress</a></li>
<li><a href="http://www.shrinker.ch/" target="_blank">shrinker</a></li>
<li><a href="http://refresh-sf.com/" target="_blank">Refresh-SF</a></li>
</ul>
<p><strong>Tip:</strong> always do thorough tests after merging and/or minifying CSS or JS files. At the very minimal, make sure you could still add items to cart, view shopping cart, and proceed to checkout.</p>
<h3>Eliminating render-blocking elements above the fold</h3>
<p>What is render-blocking content? In my own words: files or elements that delays the HTML page to be loaded as quickly as possible. Most JavaScript and CSS files are usually inserted within the <span class="theme:github lang:default decode:true crayon-inline ">&lt;head&gt;</span> . This means your browser will try to download all linked files while it tries to complete loading the rest of the page, thus creating a delay from the of first byte received until the page is rendered on your screen.</p>
<p>Above the fold means the initial area of your browser&#8217;s viewport before scrolling further.</p>
<p>The concept is simple: to get the browser to render above the fold content as quickly as possible by reducing as many unnecessary elements as possible. Unfortunately, it&#8217;s really easier to be said than done.</p>
<h4>Eliminating render-blocking CSS</h4>
<p>For quick and lazy approach, you could always move all your CSS calls to the bottom, before the closing <span class="theme:github lang:default decode:true crayon-inline ">&lt;/body&gt;</span>  tag. The problem with this is, and you probably have seen it on some sites, you would see the page shown with plain content first before it quickly shifted to the <em>stylized version </em>a second later. For Bluelounge, this was not an ideal solution. They did not want to sacrifice form over function, which was understandable.</p>
<p>The solution was to use inline CSS for essential above the fold styles within the <span class="theme:github lang:default decode:true crayon-inline ">&lt;head&gt;</span>  and call the rest of the stylesheet from external CSS file at the bottom of the page. I needed to create a mini version of the CSS and only include classes used to render above the fold content.</p>
<p>Why not inlining the entire CSS file and save the trouble from having to rebuild an entire CSS block? Because you want to keep the HTML code light. Inline CSS is not cacheable. If I put the entire CSS inline, I would add 74KB on every web page and PageSpeed would not like it either.</p>
<p>At the end my inline CSS was around 21KB, mostly from Bootstrap&#8217;s grid classes.</p>
<h4>Eliminating render-blocking JavaScript</h4>
<p>The final part was to optimize the JavaScript calls. I had been saving the hardest part for last. Shopify&#8217;s shopping cart functionality depends on JavaScript, specifically using jQuery library. What this implies is that I could not just move all JS calls to the bottom like with CSS. With the template structure at the time, some shopping cart ability like adding an item into cart works by loading the script block within the body of the page. If the jQuery library was called after the function, it would simply not work.</p>
<p>I had to restructure the JavaScript calls, removing any function made inside the content and combining them into an external JS file to be loaded at the bottom of the page. Some functions still needed to be retained as inline though. They required to call dynamic variable from Shopify&#8217;s liquid language. For these, I just move them further down.</p>
<p>After setting the right order of the scripts to be called, my work was done.</p>
<h2>The outcome</h2>
<p>The numbers speak for themselves.</p>
<div id="attachment_2262" style="width: 750px" class="wp-caption aligncenter"><a href="https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-after-mobile.png?ssl=1"><img decoding="async" aria-describedby="caption-attachment-2262" class="size-large wp-image-2262" src="https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-after-mobile.png?resize=740%2C740&#038;ssl=1" alt="Bluelounge Homepage – PageSpeed score 94/100 for Mobile" width="740" height="740" srcset="https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-after-mobile.png?resize=1024%2C1024&amp;ssl=1 1024w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-after-mobile.png?resize=150%2C150&amp;ssl=1 150w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-after-mobile.png?resize=300%2C300&amp;ssl=1 300w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-after-mobile.png?resize=768%2C768&amp;ssl=1 768w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-after-mobile.png?resize=600%2C600&amp;ssl=1 600w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-after-mobile.png?resize=780%2C780&amp;ssl=1 780w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-after-mobile.png?w=1200&amp;ssl=1 1200w" sizes="(max-width: 740px) 100vw, 740px" data-recalc-dims="1" /></a><p id="caption-attachment-2262" class="wp-caption-text">Bluelounge Homepage – PageSpeed score 94/100 for Mobile</p></div>
<div id="attachment_2261" style="width: 750px" class="wp-caption aligncenter"><a href="https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-after-desktop.png?ssl=1"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-2261" class="size-large wp-image-2261" src="https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-after-desktop.png?resize=740%2C555&#038;ssl=1" alt="Bluelounge Homepage – PageSpeed score 95/100 for Desktop" width="740" height="555" srcset="https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-after-desktop.png?resize=1024%2C768&amp;ssl=1 1024w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-after-desktop.png?resize=300%2C225&amp;ssl=1 300w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-after-desktop.png?resize=768%2C576&amp;ssl=1 768w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-after-desktop.png?resize=600%2C450&amp;ssl=1 600w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-after-desktop.png?resize=780%2C585&amp;ssl=1 780w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2016/08/Bluelounge-–-PageSpeed-after-desktop.png?w=1200&amp;ssl=1 1200w" sizes="(max-width: 740px) 100vw, 740px" data-recalc-dims="1" /></a><p id="caption-attachment-2261" class="wp-caption-text">Bluelounge Homepage – PageSpeed score 95/100 for Desktop</p></div>
<p>Of course PageSpeed score is different from page to page and you should not just measure the Homepage. In this case, most of the pages have the score of &gt;85. Mission accomplished.</p>
<p>These steps may not be applicable to all Shopify powered sites, but hopefully you will be able to pick up a point or two. Also keep in mind that if your site uses many third party apps that add calls to external assets, it is almost impossible to control those.</p>
<p>Interested to optimize your Shopify website? Please do not hesitate to <a href="https://sunarlim.com/contact/">drop me a line</a>.</p>
<p>The post <a href="https://sunarlim.com/2016/08/shopify-pagespeed/">Shopify PageSpeed Score: Pushing the limits on Bluelounge website</a> appeared first on <a href="https://sunarlim.com">Michael Sunarlim</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://sunarlim.com/2016/08/shopify-pagespeed/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">2242</post-id>	</item>
		<item>
		<title>Using Transactional Email Service for Your E-Commerce Platform</title>
		<link>https://sunarlim.com/2013/07/using-transactional-email-service-for-your-e-commerce-platform/</link>
					<comments>https://sunarlim.com/2013/07/using-transactional-email-service-for-your-e-commerce-platform/#respond</comments>
		
		<dc:creator><![CDATA[Michael]]></dc:creator>
		<pubDate>Tue, 02 Jul 2013 10:48:49 +0000</pubDate>
				<category><![CDATA[E-Commerce]]></category>
		<category><![CDATA[Web Apps]]></category>
		<category><![CDATA[Web Tools]]></category>
		<category><![CDATA[email]]></category>
		<category><![CDATA[magento]]></category>
		<category><![CDATA[opencart]]></category>
		<category><![CDATA[platforms]]></category>
		<category><![CDATA[shopping cart]]></category>
		<guid isPermaLink="false">https://sunarlim.com/?p=847</guid>

					<description><![CDATA[<p>First of all, do not get it wrong. &#8220;Transaction email&#8221; here does not refer to only financial transactions. Quoting from MailChimp blog post: &#8230;think of it as “anything that isn’t bulk“. Basically, it is email sent to an individual based on some action. In my own words related to e-commerce, transaction emails are all notification... <span class="more"><a class="more-link" href="https://sunarlim.com/2013/07/using-transactional-email-service-for-your-e-commerce-platform/">Continue reading <span class="meta-nav">&#8594;</span></a></span></p>
<p>The post <a href="https://sunarlim.com/2013/07/using-transactional-email-service-for-your-e-commerce-platform/">Using Transactional Email Service for Your E-Commerce Platform</a> appeared first on <a href="https://sunarlim.com">Michael Sunarlim</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>First of all, do not get it wrong. &#8220;Transaction email&#8221; here does not refer to only financial transactions. Quoting from <a href="http://blog.mailchimp.com/what-is-transactional-email/" title="What is transactional email?" target="_blank">MailChimp blog post</a>:</p>
<blockquote><p>&#8230;think of it as “<strong>anything that isn’t bulk</strong>“. Basically, it is email sent to an individual <strong>based on some action</strong>.</p></blockquote>
<p>In my own words related to e-commerce, transaction emails are all notification emails sent out by your e-commerce/shopping cart platform related with a customer&#8217;s account or order activities such as:</p>
<ul>
<li>Account creation welcome email</li>
<li>Password reminder/reset instructions</li>
<li>Order confirmation/invoice</li>
<li>Order status update</li>
<li>Shipping tracking number</li>
<li>Order review request, etc</li>
</ul>
<p>By default, if you host your e-commerce platform on your own server, most likely these emails are sent directly using the server&#8217;s built-in mail application like sendmail on Apache/PHP environment. If you have this running then all is good, but what if you can make it even better? By using 3rd-party transaction email provider, you send out these emails through their server. Usually communication between your server and theirs is done through APIs or SMTP.<br />
<span id="more-847"></span></p>
<h3>Benefits</h3>
<p>Why is it better? There are additional features that you can gain from using a separate server/service to send our your transactional email:</p>
<h4>Higher rate of deliverability</h4>
<p>Even if you have a very good and clean server, there is still a possibility that your server&#8217;s IP to get rejected by certain ISPs (Gmail, Yahoo, Hotmail, etc) when they feel that too many emails coming from the same origin. Like email SaaS, transactional email services most likely have a farm of servers with multiple IPs that has been optimized to get maximum acceptability across different ISPs.</p>
<h4>Additional insights of your email activities</h4>
<p>You now have the options to track the numbers of bounced emails, open rates and click rates just like when you are sending your newsletter email campaigns. While the accuracy of this not 100%, you can only track open rate if the customers&#8217; email readers supports HTML, it is still a valuable additional insight. Let&#8217;s say you see that the open rate for your invoice emails is very low, probably the subject is not clear enough and you can make an improvement on it. </p>
<h4>Create additional rules</h4>
<p>Customers occasionally enter wrong email address in their order details which may result the notification emails never get delivered to them. By setting a simple rule like to notify you when an email gets bounced, you can then check the cause and email address, and if possible correct it before the customer contacts you regarding his order.</p>
<h3>Services Compared</h3>
<p>There are few services that offer to send transactional emails. There are typically 2 types of pricing:</p>
<ol>
<li><strong>Monthly plan</strong><br />
You pay a flat monthly fee and you will be given a quota of number of emails that can be sent within that cycle.</li>
<li><strong>Pay-as-you-go</strong><br />
You pay based on the number of emails or credits that you have sent out within that month.</li>
<li><strong>Buy bulk credits</strong><br />
You buy a bundle of credits where it will be subtracted every time you send out an email.</li>
</ol>
<p>Honestly I cannot rate each of the services&#8217; quality and features, as in the context of e-commerce applications we are not using the features or APIs too extensively. For now, I only compare them based on pricing and compatibility with most popular self-hosted shopping cart platforms, Magento and OpenCart.</p>
<table width="100%">
<tr>
<th width="20%">&nbsp;</th>
<th width="20%"><img loading="lazy" decoding="async" src="https://i0.wp.com/sunarlim.com/wp-content/uploads/2013/07/SendGrid-Logo.png?resize=200%2C51&#038;ssl=1" alt="SendGrid-Logo" width="200" height="51" class="alignnone size-full wp-image-865" srcset="https://i0.wp.com/sunarlim.com/wp-content/uploads/2013/07/SendGrid-Logo.png?w=200&amp;ssl=1 200w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2013/07/SendGrid-Logo.png?resize=150%2C38&amp;ssl=1 150w" sizes="(max-width: 200px) 100vw, 200px" data-recalc-dims="1" /></th>
<th width="20%"><img loading="lazy" decoding="async" src="https://i0.wp.com/sunarlim.com/wp-content/uploads/2013/07/Postmark-Logo.png?resize=160%2C30&#038;ssl=1" alt="Postmark-Logo" width="160" height="30" class="alignnone size-full wp-image-864" srcset="https://i0.wp.com/sunarlim.com/wp-content/uploads/2013/07/Postmark-Logo.png?w=160&amp;ssl=1 160w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2013/07/Postmark-Logo.png?resize=150%2C28&amp;ssl=1 150w" sizes="(max-width: 160px) 100vw, 160px" data-recalc-dims="1" /></th>
<th width="20%"><img loading="lazy" decoding="async" src="https://i0.wp.com/sunarlim.com/wp-content/uploads/2013/07/Mandrill-Logo.png?resize=200%2C48&#038;ssl=1" alt="Mandrill-Logo" width="200" height="48" class="alignnone size-full wp-image-863" srcset="https://i0.wp.com/sunarlim.com/wp-content/uploads/2013/07/Mandrill-Logo.png?w=200&amp;ssl=1 200w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2013/07/Mandrill-Logo.png?resize=150%2C36&amp;ssl=1 150w" sizes="(max-width: 200px) 100vw, 200px" data-recalc-dims="1" /></th>
<th width="20%"><img loading="lazy" decoding="async" src="https://i0.wp.com/sunarlim.com/wp-content/uploads/2013/07/MailJet-Logo.png?resize=164%2C58&#038;ssl=1" alt="MailJet-Logo" width="164" height="58" class="alignnone size-full wp-image-862" srcset="https://i0.wp.com/sunarlim.com/wp-content/uploads/2013/07/MailJet-Logo.png?w=164&amp;ssl=1 164w, https://i0.wp.com/sunarlim.com/wp-content/uploads/2013/07/MailJet-Logo.png?resize=150%2C53&amp;ssl=1 150w" sizes="(max-width: 164px) 100vw, 164px" data-recalc-dims="1" /></th>
</tr>
<tr>
<td><strong>Price starts from</strong></td>
<td>$9.95 per month &#8211; 40,000 credits</td>
<td>$1.50 per 10,000 emails</td>
<td>Free for first 12,000 emails in a month</td>
<td>Free for first 6,000 emails in a month</td>
</tr>
<tr>
<tr>
<td><strong>Magento integration</strong></td>
<td><a href="http://sendgrid.com/docs/Integrate/Open_Source_Apps/magento.html" target="_blank">documented</a></td>
<td><a href="https://github.com/papertank/magento-postmark" target="_blank">plugin</a></td>
<td><a href="http://www.magentocommerce.com/magento-connect/mage-monkey-mailchimp-integration-4865.html" target="_blank">MagentoConnect extension</a></td>
<td><a href="http://www.mailjet.com/plugin/magento.htm" target="_blank">plugin</a></td>
</tr>
<tr>
<td><strong>OpenCart integration</strong></td>
<td>via SMTP</td>
<td>via SMTP or PHP class</td>
<td><a href="http://www.opencart.com/index.php?route=extension/extension/info&#038;extension_id=11313" target="_blank">extension</a> ($10)</td>
<td>via SMTP</td>
</tr>
<td><strong>Website</strong></td>
<td><a href="http://sendgrid.com/" target="_blank">sendgrid.com</a></td>
<td><a href="http://postmarkapp.com/" target="_blank">postmarkapp.com</a></td>
<td><a href="http://mandrill.com/" target="_blank">mandrill.com</a></td>
<td><a href="http://mailjet.com/" target="_blank">mailjet.com</a></td>
</tr>
</table>
<p>If you have experience using different transactional email services for your online store, please share it here.</p>
<p>The post <a href="https://sunarlim.com/2013/07/using-transactional-email-service-for-your-e-commerce-platform/">Using Transactional Email Service for Your E-Commerce Platform</a> appeared first on <a href="https://sunarlim.com">Michael Sunarlim</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://sunarlim.com/2013/07/using-transactional-email-service-for-your-e-commerce-platform/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">847</post-id>	</item>
		<item>
		<title>WebPagetest &#8211; Website Performance and Optimization Test</title>
		<link>https://sunarlim.com/2013/02/webpagetest-website-performance-and-optimization-test/</link>
					<comments>https://sunarlim.com/2013/02/webpagetest-website-performance-and-optimization-test/#respond</comments>
		
		<dc:creator><![CDATA[Michael]]></dc:creator>
		<pubDate>Tue, 19 Feb 2013 13:25:16 +0000</pubDate>
				<category><![CDATA[Web Tools]]></category>
		<category><![CDATA[benchmark]]></category>
		<category><![CDATA[performance]]></category>
		<guid isPermaLink="false">https://sunarlim.com/?p=645</guid>

					<description><![CDATA[<p>webpagetest.org Great tool to benchmark your web page performance and load time.</p>
<p>The post <a href="https://sunarlim.com/2013/02/webpagetest-website-performance-and-optimization-test/">WebPagetest &#8211; Website Performance and Optimization Test</a> appeared first on <a href="https://sunarlim.com">Michael Sunarlim</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><a href="http://www.webpagetest.org">webpagetest.org</a></p>
<p>Great tool to benchmark your web page performance and load time.</p>
<p>The post <a href="https://sunarlim.com/2013/02/webpagetest-website-performance-and-optimization-test/">WebPagetest &#8211; Website Performance and Optimization Test</a> appeared first on <a href="https://sunarlim.com">Michael Sunarlim</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://sunarlim.com/2013/02/webpagetest-website-performance-and-optimization-test/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">645</post-id>	</item>
		<item>
		<title>Remote Backup your VPS/Dedicated Server</title>
		<link>https://sunarlim.com/2012/02/remote-backup-your-vpsdedicated-server/</link>
					<comments>https://sunarlim.com/2012/02/remote-backup-your-vpsdedicated-server/#respond</comments>
		
		<dc:creator><![CDATA[Michael]]></dc:creator>
		<pubDate>Tue, 14 Feb 2012 07:44:45 +0000</pubDate>
				<category><![CDATA[Web Tools]]></category>
		<guid isPermaLink="false">https://sunarlim.com/?p=463</guid>

					<description><![CDATA[<p>There is no such thing as being too safe in terms of managing web server. Your hosting provider may have provided complimentary daily backup to your VPS or Dedicated Server, you do weekly and monthly backup of your FTP files and database, but still worse thing can happen which you do not expect. The consequences can... <span class="more"><a class="more-link" href="https://sunarlim.com/2012/02/remote-backup-your-vpsdedicated-server/">Continue reading <span class="meta-nav">&#8594;</span></a></span></p>
<p>The post <a href="https://sunarlim.com/2012/02/remote-backup-your-vpsdedicated-server/">Remote Backup your VPS/Dedicated Server</a> appeared first on <a href="https://sunarlim.com">Michael Sunarlim</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>There is no such thing as being too safe in terms of managing web server. Your hosting provider may have provided complimentary daily backup to your VPS or Dedicated Server, you do weekly and monthly backup of your FTP files and database, but still worse thing can happen which you do not expect. The consequences can be fatal: permanently loose some or all of your data.</p>
<p>If you already do the regular backup then you can probably restore everything with the cost of your time, or the hosting support team may assist you to restore their daily backup. Then again, there is a possibility their backup is on the same node that is having the problem.</p>
<p>Having a remote backup is one of the most simple precaution you can do to add another layer to your disaster recovery plan. One of the reasons web/IT people hesitate to do this is because it means doubling the cost of the web server since you need to host a new one in preferably different location. Well, in my case this obstacle has been solved as I managed to find a couple of companies that offer special product only for this purpose.<span id="more-463"></span></p>
<h3>How Does It Work?</h3>
<p>Unlike most web hosting providers that offer complete tunning services that include web server, email, database, etc,  a backup only plan will only offer a large disk space that you can access via FTP. To do the automatic backup, you can use <a href="http://en.wikipedia.org/wiki/Rsync" target="_blank">Rsync</a> which is a great Unix tool to do increment copies of your server files. That combined with cronjob setting, you get an automatic, regular, secure, and efficient backup of your server.</p>
<h3>Who Offers This Kind of Service?</h3>
<p>When I did my research, I found two companies with good reputation that can provide FTP backup plan with <span style="text-decoration: underline;">very reasonable</span> pricing. They are not big players in the hosting industry, but they offer excellent service and I am very happy with the results they one of them so far. Here are the links to those ompanies you need to check:</p>
<ul>
<li><a title="Hostigation - Backup Plans" href="https://hostigation.com/?page=Backup" target="_blank">Hostigation</a></li>
<li><a title="WebbyCart - Remote / Offsite Rsync Backup" href="http://www.webbycart.com/backup.htm" target="_blank">WebbyCart</a></li>
</ul>
<p>There you go, hopefully this little tip can help you to sleep better at nights knowing your server files are backed up and you have a complete backup of your files on different server.</p>
<p>The post <a href="https://sunarlim.com/2012/02/remote-backup-your-vpsdedicated-server/">Remote Backup your VPS/Dedicated Server</a> appeared first on <a href="https://sunarlim.com">Michael Sunarlim</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://sunarlim.com/2012/02/remote-backup-your-vpsdedicated-server/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">463</post-id>	</item>
		<item>
		<title>ScribeFire: Fire up your blogging</title>
		<link>https://sunarlim.com/2010/12/scribefire/</link>
					<comments>https://sunarlim.com/2010/12/scribefire/#respond</comments>
		
		<dc:creator><![CDATA[Michael]]></dc:creator>
		<pubDate>Wed, 15 Dec 2010 10:01:24 +0000</pubDate>
				<category><![CDATA[Applications]]></category>
		<category><![CDATA[Web Tools]]></category>
		<category><![CDATA[browser]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[plug-in]]></category>
		<category><![CDATA[safari]]></category>
		<guid isPermaLink="false">https://sunarlim.com/2010/12/354/</guid>

					<description><![CDATA[<p>The year is coming to an end. How many real posts I published in 2010? Only about ten, and the last one was almost 7 months ago. Where is my motivation to publish more stuff? Well now I just found a new web service / browser extension called Scribefire. The Idea is I can publish... <span class="more"><a class="more-link" href="https://sunarlim.com/2010/12/scribefire/">Continue reading <span class="meta-nav">&#8594;</span></a></span></p>
<p>The post <a href="https://sunarlim.com/2010/12/scribefire/">ScribeFire: Fire up your blogging</a> appeared first on <a href="https://sunarlim.com">Michael Sunarlim</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>The year is coming to an end. How many real posts I published in 2010? Only about ten, and the last one was almost 7 months ago. Where is my motivation to publish more stuff? Well now I just found a new web service / browser extension called <a href="http://www.scribefire.com/" target="_blank">Scribefire</a>. The Idea is I can publish post more easily right from my browser and start writing right that minute. Will this encourage me to post more often? We&#8217;ll see&#8230;.</p>
<p>By the way, ScribeFire works in Firefox, Chrome and Safari.</p>
<p>The post <a href="https://sunarlim.com/2010/12/scribefire/">ScribeFire: Fire up your blogging</a> appeared first on <a href="https://sunarlim.com">Michael Sunarlim</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://sunarlim.com/2010/12/scribefire/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">354</post-id>	</item>
		<item>
		<title>My Favorite Coda Plug-Ins</title>
		<link>https://sunarlim.com/2010/05/my-favorite-coda-plug-ins/</link>
					<comments>https://sunarlim.com/2010/05/my-favorite-coda-plug-ins/#respond</comments>
		
		<dc:creator><![CDATA[Michael]]></dc:creator>
		<pubDate>Tue, 18 May 2010 19:17:23 +0000</pubDate>
				<category><![CDATA[Web Development]]></category>
		<category><![CDATA[Web Tools]]></category>
		<guid isPermaLink="false">https://sunarlim.com/?p=331</guid>

					<description><![CDATA[<p>I have to admit it, Coda by Panic is really one of the best Mac apps ever. Not only it has finally given me the better direction in developing HTML/CSS correctly, it also makes it more fun! It is quite a shame that Panic has not been updating it for a few months now, but... <span class="more"><a class="more-link" href="https://sunarlim.com/2010/05/my-favorite-coda-plug-ins/">Continue reading <span class="meta-nav">&#8594;</span></a></span></p>
<p>The post <a href="https://sunarlim.com/2010/05/my-favorite-coda-plug-ins/">My Favorite Coda Plug-Ins</a> appeared first on <a href="https://sunarlim.com">Michael Sunarlim</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div id="attachment_332" style="width: 153px" class="wp-caption alignright"><a href="http://www.panic.com/coda/"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-332" class="size-full wp-image-332 " style="border: 0px initial initial;" title="Coda Logo" alt="Coda" src="https://i0.wp.com/sunarlim.com/wp-content/uploads/2010/05/coda_logo.png?resize=143%2C146&#038;ssl=1" width="143" height="146" data-recalc-dims="1" /></a><p id="caption-attachment-332" class="wp-caption-text">Panic Coda</p></div>
<p>I have to admit it, <a href="http://www.panic.com/coda/" target="_blank">Coda by Panic</a> is really one of the best Mac apps ever. Not only it has finally given me the better direction in developing HTML/CSS correctly, it also makes it more fun! It is quite a shame that Panic has not been updating it for a few months now, but that does not make it less powerful.</p>
<p>Why? Because Coda supports third-party plug-ins to enable you add more functions on top on the ones that come with the application itself. No, those plug-ins will not automatically create a website for you.. Consider them like as WordPress plug-ins or widgets, simple and small functions but if collected and used properly can save you hours of development time.<span id="more-331"></span></p>
<p>You can get a long list of the officially supported plugin-ins on <a href="http://www.panic.com/coda/developer/community/plugins.php" target="_blank">Panic&#8217;s Developer section</a>. To help you in choosing the right ones, here are my favorites:</p>
<ul>
<li><a href="http://macstop.net/design/coda-lorem-ipsum-plugin/">Lorem Ipsum</a><br />
Generate 1 to 5 paragraphs of Lorem Ipsum placeholder text.</li>
<li><a href="http://kevin.glowacz.info/2008/12/coda-plugin-remove-trailing-whitespace.html">Remove Trailing Whitespace</a><br />
Trims whitespace from the ends of lines.</li>
<li><a href="http://www.vauchel.com/blog/webdesign/plug-in-caracteres-speciaux-pour-coda/#english">Replace Special Characters</a><br />
Converts almost all special symbols and characters into HTML entities.</li>
<li><a href="http://onecrayon.com/tea/coda/" target="_blank">TEA for Coda</a> <em>(not listed on Panic&#8217;s website)</em><br />
Text Editor Actions for Coda (formerly “Textmate Emulation Actions”, and always TEA for short) is a plugin that emulates some of my favorite Textmate HTML.bundle actions.</li>
<li><a href="http://mondaybynoon.com/2008/12/15/css-tools-coda-plugin/">CSS Tools<br />
</a>Performs automatic reformatting of CSS.</li>
</ul>
<p>If you have your own favorites, please feel free to share them below.</p>
<p>The post <a href="https://sunarlim.com/2010/05/my-favorite-coda-plug-ins/">My Favorite Coda Plug-Ins</a> appeared first on <a href="https://sunarlim.com">Michael Sunarlim</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://sunarlim.com/2010/05/my-favorite-coda-plug-ins/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">331</post-id>	</item>
		<item>
		<title>Tools to Build Your Contact Form in Less Than 5 Minutes</title>
		<link>https://sunarlim.com/2010/04/tools-to-build-your-contact-form-in-less-than-5-minutes/</link>
					<comments>https://sunarlim.com/2010/04/tools-to-build-your-contact-form-in-less-than-5-minutes/#respond</comments>
		
		<dc:creator><![CDATA[Michael]]></dc:creator>
		<pubDate>Mon, 12 Apr 2010 15:57:29 +0000</pubDate>
				<category><![CDATA[Web Apps]]></category>
		<category><![CDATA[Web Tools]]></category>
		<guid isPermaLink="false">https://sunarlim.com/?p=281</guid>

					<description><![CDATA[<p>When you go to a really cool website and want to contact the person or company who runs it, what is your most preferred method? Email, instant message, social media (Twitter, Facebook), or via the contact form? Either one is good, but for most people contact form would probably the most convenient one. Few web... <span class="more"><a class="more-link" href="https://sunarlim.com/2010/04/tools-to-build-your-contact-form-in-less-than-5-minutes/">Continue reading <span class="meta-nav">&#8594;</span></a></span></p>
<p>The post <a href="https://sunarlim.com/2010/04/tools-to-build-your-contact-form-in-less-than-5-minutes/">Tools to Build Your Contact Form in Less Than 5 Minutes</a> appeared first on <a href="https://sunarlim.com">Michael Sunarlim</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>When you go to a really cool website and want to contact the person or company who runs it, what is your most preferred method? Email, instant message, social media (Twitter, Facebook), or via the contact form? Either one is good, but for most people contact form would probably the most convenient one.<span id="more-281"></span></p>
<p>Few web developers hesitate to include one because they think it will take too much time or effort to make it work, specially if they do not have any server-side programming basics. That is no longer the case, these tools will help you build nice contact form for any project quickly:</p>
<h3><a href="http://theodin.co.uk/blog/ajax/contactable-jquery-plugin.html" target="_blank">Contactable</a></h3>
<p style="text-align: center;"><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-317" title="Contactable" alt="" src="https://i0.wp.com/sunarlim.com/wp-content/uploads/2010/04/contactableHeader1-e1271087235811.png?resize=500%2C101&#038;ssl=1" width="500" height="101" data-recalc-dims="1" /></p>
<p><a href="http://theodin.co.uk/blog/ajax/contactable-jquery-plugin.html" target="_blank">Contactable</a> is a jQuery plugin designed to make contact/feedback forms simpler and more accessible. This plugin will enable you to create a contact form on any page of a site with minimal effort. I also made a small modification of this great plugin to appear on the right side of the page instead the left, you can <a href="https://sunarlim.com/2010/03/contactable-jquery-plugin-on-the-right-side-of-page/">check it here</a>.</p>
<h3><a href="http://wufoo.com/" target="_blank">Wufoo</a></h3>
<p style="text-align: center;"><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-319" title="Wufoo" alt="" src="https://i0.wp.com/sunarlim.com/wp-content/uploads/2010/04/screenshot_01-e1271087381347.png?resize=497%2C119&#038;ssl=1" width="497" height="119" data-recalc-dims="1" /></p>
<p><a href="http://wufoo.com/" target="_blank">Wufoo</a> is one of the easiest form builder around. It helps you create contact forms, online surveys, and invitations so you can collect the data, registrations and online payments you need without writing a single line of code. Its free account is more than enough to create basic online forms, but you can easily upgrade to premium plans to fit your needs.</p>
<h3><a href="http://www.phpform.org/" target="_blank">pForm</a></h3>
<p style="text-align: center;"><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-320" title="pForm" alt="" src="https://i0.wp.com/sunarlim.com/wp-content/uploads/2010/04/screenshot_02-e1271087534743.png?resize=500%2C161&#038;ssl=1" width="500" height="161" data-recalc-dims="1" /></p>
<p>Similar with Wufoo, <a href="http://www.phpform.org/" target="_blank">pForm</a> comes with an online form builder with simple interface that will help you build forms of any kind. Integration with your existing web page might be a bit more complicated than Wufoo, but still more simple than building a custom form yourself.</p>
<h3><a href="http://www.appnitro.com/" target="_blank">MachForm</a></h3>
<p style="text-align: center;"><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-321" title="MachForm" alt="" src="https://i0.wp.com/sunarlim.com/wp-content/uploads/2010/04/screenshot_03-e1271087673737.png?resize=500%2C110&#038;ssl=1" width="500" height="110" data-recalc-dims="1" /></p>
<p><a href="http://www.appnitro.com/" target="_blank">MachForm</a> is developed by the same company as pForm. It is the server installable version. You have more options like: receive submission and save to database, send entries to email, send autoresponder email, validate inputs, and lot more.</p>
<p>The post <a href="https://sunarlim.com/2010/04/tools-to-build-your-contact-form-in-less-than-5-minutes/">Tools to Build Your Contact Form in Less Than 5 Minutes</a> appeared first on <a href="https://sunarlim.com">Michael Sunarlim</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://sunarlim.com/2010/04/tools-to-build-your-contact-form-in-less-than-5-minutes/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">281</post-id>	</item>
		<item>
		<title>Choosing The Right Web Hosting</title>
		<link>https://sunarlim.com/2010/02/choosing-the-right-web-hosting/</link>
					<comments>https://sunarlim.com/2010/02/choosing-the-right-web-hosting/#comments</comments>
		
		<dc:creator><![CDATA[Michael]]></dc:creator>
		<pubDate>Tue, 23 Feb 2010 17:17:44 +0000</pubDate>
				<category><![CDATA[Web Development]]></category>
		<category><![CDATA[Web Tools]]></category>
		<guid isPermaLink="false">https://sunarlim.com/?p=265</guid>

					<description><![CDATA[<p>I decided to write this post to remember my early years as a web developer when I only wanted to offer the best price for the client, including to suggest the cheapest web hosting provider without having a slightest clue how to qualify it as a &#8216;good&#8217; or &#8216;better&#8217; service. It might be just me... <span class="more"><a class="more-link" href="https://sunarlim.com/2010/02/choosing-the-right-web-hosting/">Continue reading <span class="meta-nav">&#8594;</span></a></span></p>
<p>The post <a href="https://sunarlim.com/2010/02/choosing-the-right-web-hosting/">Choosing The Right Web Hosting</a> appeared first on <a href="https://sunarlim.com">Michael Sunarlim</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>I decided to write this post to remember my early years as a web developer when I only wanted to offer the best price for the client, including to suggest the cheapest web hosting provider without having a slightest clue how to qualify it as a &#8216;good&#8217; or &#8216;better&#8217; service. It might be just me back then, but web server was probably the last thing I would decide or search in the whole development process. They are just servers that are contantly connected to the Internet and host your websites so they are all pretty much the same, right?</p>
<p>Wrong. If you have the principle that a web project does not end after you launch a website and get the final payment, you should realize the <em>extra work</em> you need to do if you chose or suggested wrong hosting provider. You want your client to be happy with the website you built, not to get frustrated because it goes down every now and then while you can do nothing about it.</p>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-273" title="Hosting Rack" alt="" src="https://i0.wp.com/sunarlim.com/wp-content/uploads/2010/02/480552_24485422-e1266944789396.jpg?resize=500%2C178&#038;ssl=1" width="500" height="178" data-recalc-dims="1" /></p>
<p>So, what makes the differences between the right providers with the rest? To me it would be quality, support and transparency. Put prices in consideration after you are confident with those three first. Remember, web hosting is a very competitive business. It is rarely a company is trying to overcharge you unless it has much better quality than the rest.<span id="more-265"></span></p>
<p>Now to the most important question: what type of server that you need?</p>
<h2>Shared Hosting</h2>
<p>Most companies and developers usually put this as the first option for a very reasonable reason: price. Nowadays, you can get the good shared hosting plans from $5-20/month. Are there differences between one with another that costs 4-5 times more? Most of the time, yes. Usually providers that offer more economical plans gain the profit by trying to sell more with the same server resources, this might mean they put more restrictions for the account like outgoing email and databases limitations.</p>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-276" title="Shared Hosting Plans" alt="" src="https://i0.wp.com/sunarlim.com/wp-content/uploads/2010/02/screenshot_03-e1266945298925.gif?resize=500%2C126&#038;ssl=1" width="500" height="126" data-recalc-dims="1" /></p>
<p>When you are researching for a shared hosting plan, be sure to check on the limits for those. The next thing you might also want to know is SSH support.</p>
<h3>The good things</h3>
<ul>
<li>Economical</li>
<li>Best money for disk capacity offered</li>
<li>Can be set with minimal web server knowledge</li>
<li>Easy to upgrade, although mostly only for space and bandwidth</li>
</ul>
<h3>What you might miss</h3>
<ul>
<li>Limited resources</li>
<li>Limited access</li>
</ul>
<h3>Things to check</h3>
<ul>
<li>Disk space capacity</li>
<li>Email, database, etc limitations</li>
<li>SSH access support</li>
</ul>
<h3>Ideal for&#8230;</h3>
<ul>
<li>Websites with minimal or no plan of expansion</li>
<li>Static websites</li>
<li>Companies or clients that plan to host many email accounts so require a big disk space</li>
</ul>
<h3>Recommendation</h3>
<ul>
<li><a href="http://www.bluehost.com" target="_blank">BlueHost</a></li>
<li><a href="http://www.mediatemple.net" target="_blank">MediaTemple</a>*</li>
</ul>
<p>*Note: recently MT has been having stability and security issues on their gs (shared) plans, but I cannot overlook the fact that it has the nicest interface. This is important because it encourages the clients to browse through their control panel and do not get overwhelmed by it.</p>
<h2>Virtual Private Server</h2>
<p>This is the next upgrade for regular hosting, above this then it means you are developing a website in a very huge scale. Virtual Private Server gives you much more flexibility when it comes to resources and access. You can practically install anything that you can do on your local computer/server. It can easily be an overkill you opt for this if you only plan to host a simple company profile without any server-side processes.</p>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-275" title="VPS" alt="" src="https://i0.wp.com/sunarlim.com/wp-content/uploads/2010/02/screenshot_04-e1266945377686.gif?resize=500%2C194&#038;ssl=1" width="500" height="194" data-recalc-dims="1" /></p>
<p>When do you need to upgrade to dedicated virtual? When your blog is listed as the top 10 blogs to follow by Smashing Magazine, kidding. You should start considering it if you are developing a web project or installing a web app that requires more than average resources, like a newsletter system with thousands of subscribers or e-commerce system with many customers.</p>
<h3>The good things</h3>
<ul>
<li>Better flexibility</li>
<li>Installable with almost any type of web based applications</li>
<li>Can be reselled</li>
<li>Guaranteed resources</li>
</ul>
<h3>What you might miss</h3>
<ul>
<li>Cost more than shared hosting, usually with less disk space</li>
<li>Simple access, more knowledge is needed</li>
</ul>
<h3>Things to check</h3>
<ul>
<li>Type of server: unmanaged/semi-managed/managed</li>
<li>Control Panel system: CPanel/Plesk/etc</li>
<li>Disk space, actual memory, server processor</li>
</ul>
<h3>Ideal for&#8230;</h3>
<ul>
<li>Websites with few applications installed</li>
<li>Dynamic websites and blogs with very high daily traffic</li>
<li>Companies or clients who are planning to expand the website with new sections and features</li>
<li>If you want to host the projects from your clients yourself</li>
</ul>
<h3>Recommendation</h3>
<ul>
<li><a href="http://www.linode.com" target="_blank">Linode</a> (unmanaged)</li>
<li><a href="http://www.wiredtree.com" target="_blank">WiredTree</a> (managed)</li>
</ul>
<p>At the end, when comes the time to choose one, look for direct references and do your research to find the most suitable plan for. It is worth to mention about <a href="http://www.webhostingtalk.com" target="_blank">WebHostingTalk</a> as one of the best source to find web hosting reviews and coupon codes and promotion!</p>
<p>I am sure you have your own opinions and suggestions about this, please feel free to post your comments.</p>
<p>The post <a href="https://sunarlim.com/2010/02/choosing-the-right-web-hosting/">Choosing The Right Web Hosting</a> appeared first on <a href="https://sunarlim.com">Michael Sunarlim</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://sunarlim.com/2010/02/choosing-the-right-web-hosting/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">265</post-id>	</item>
		<item>
		<title>Sendloop</title>
		<link>https://sunarlim.com/2008/09/sendloop/</link>
					<comments>https://sunarlim.com/2008/09/sendloop/#respond</comments>
		
		<dc:creator><![CDATA[Michael]]></dc:creator>
		<pubDate>Tue, 02 Sep 2008 17:50:17 +0000</pubDate>
				<category><![CDATA[Web Tools]]></category>
		<category><![CDATA[e-marketing]]></category>
		<category><![CDATA[shopify]]></category>
		<guid isPermaLink="false">http://wp.sunarlim.com.com/?p=131</guid>

					<description><![CDATA[<p>Sendloop is a promising email marketing service with simple and easy user interface. It is developed by the guys from Octech who created Oempro, a popular email marketing software. If you have been wanting to promote or manage an email marketing for your website or business, I would recommend to try it. With sleek web... <span class="more"><a class="more-link" href="https://sunarlim.com/2008/09/sendloop/">Continue reading <span class="meta-nav">&#8594;</span></a></span></p>
<p>The post <a href="https://sunarlim.com/2008/09/sendloop/">Sendloop</a> appeared first on <a href="https://sunarlim.com">Michael Sunarlim</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><a href="http://sendloop.com/" target="_blank"><img loading="lazy" decoding="async" class="size-full wp-image-132 alignright" title="Sendloop logo" src="https://i0.wp.com/wp.sunarlim.com/wp-content/uploads/2008/09/logo.gif?resize=200%2C40" alt="Sendloop by Octech" width="200" height="40" data-recalc-dims="1" /></a></p>
<p><a href="http://sendloop.com/" target="_blank"><strong>Sendloop</strong></a> is a promising email marketing service with simple and easy user interface. It is developed by the guys from Octech who created <a href="http://octeth.com/" target="_blank">Oempro</a>, a popular email marketing software.</p>
<p>If you have been wanting to promote or manage an email marketing for your website or business, I would recommend to try it. With sleek web 2.0 look &amp; feel, you can easily adjust yourself with the system. I dare to say this because the first email marketing software I used years ago just so hard to adapt, although it worked.</p>
<div id="attachment_133" style="width: 460px" class="wp-caption aligncenter"><a href="https://i0.wp.com/wp.sunarlim.com/wp-content/uploads/2008/09/sendloop_ui.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-133" class="size-medium wp-image-133" title="Sendloop UI" src="https://i0.wp.com/wp.sunarlim.com/wp-content/uploads/2008/09/sendloop_ui-450x287.png?resize=450%2C287" alt="Clean User Interface" width="450" height="287" data-recalc-dims="1" /></a><p id="caption-attachment-133" class="wp-caption-text">A screenshot of Sendloop&#39;s clean user interface</p></div>
<p>Now with Sendloop and other similar services, everyone can create and manage their own mailing lists for regular newsletter or occasional email blast. This is a hosted service, which means you do not need to install and set it up on your own server. You just need to manage your lists, create your campaigns and send them.</p>
<p>They only charge you when you send email to your list(s). For 1 cent per recipient, this is quite a bargain. If you have 1,000 of subscribed email addresses, you only need to budget $10 for your monthly newsletter. Of course if you have more than 10,000 addresses and you need to send them weekly, considering to install your own newsletter system is a good idea.</p>
<p>One last highlight why I have been following their news recently, because they have this one feature that integrates with <a href="http://www.shopify.com/?ref=mayks" target="_blank">Shopify&#8217;s</a> webhooks. It will enable you to automatically import your customers email addresses to Sendloop.</p>
<p>More information can be found <a href="http://sendloop.com/" target="_blank">their website</a>.</p>
<p>The post <a href="https://sunarlim.com/2008/09/sendloop/">Sendloop</a> appeared first on <a href="https://sunarlim.com">Michael Sunarlim</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://sunarlim.com/2008/09/sendloop/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">131</post-id>	</item>
		<item>
		<title>Ajax Loader Image Generator</title>
		<link>https://sunarlim.com/2008/08/ajax-loader-image-generator/</link>
					<comments>https://sunarlim.com/2008/08/ajax-loader-image-generator/#respond</comments>
		
		<dc:creator><![CDATA[Michael]]></dc:creator>
		<pubDate>Tue, 26 Aug 2008 17:30:57 +0000</pubDate>
				<category><![CDATA[Web Tools]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[web 2.0]]></category>
		<guid isPermaLink="false">http://wp.sunarlim.com.com/?p=118</guid>

					<description><![CDATA[<p>Always having a hard time to find the perfect loader for your AJAX scripts? Then you need to bookmark this site: Ajaxload. Not only it provides a few dozens of animated GIF image for your loader, you can even customize it background and foreground colors. Nice!</p>
<p>The post <a href="https://sunarlim.com/2008/08/ajax-loader-image-generator/">Ajax Loader Image Generator</a> appeared first on <a href="https://sunarlim.com">Michael Sunarlim</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Always having a hard time to find the perfect loader for your AJAX scripts? Then you need to bookmark this site: <a href="http://www.ajaxload.info/" target="_blank">Ajaxload</a>.</p>
<p>Not only it provides a few dozens of animated GIF image for your loader, you can even customize it background and foreground colors. Nice!</p>
<p>The post <a href="https://sunarlim.com/2008/08/ajax-loader-image-generator/">Ajax Loader Image Generator</a> appeared first on <a href="https://sunarlim.com">Michael Sunarlim</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://sunarlim.com/2008/08/ajax-loader-image-generator/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">118</post-id>	</item>
	</channel>
</rss>
